<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>215902</bug_id>
          
          <creation_ts>2020-08-27 15:07:24 -0700</creation_ts>
          <short_desc>Remove the feature flag for capped cookies set in 3rd-party CNAME cloaked HTTP responses and add ITP debug logging</short_desc>
          <delta_ts>2020-08-27 19:33:00 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=215909</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="John Wilander">wilander</reporter>
          <assigned_to name="John Wilander">wilander</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1683492</commentid>
    <comment_count>0</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2020-08-27 15:07:24 -0700</bug_when>
    <thetext>We should remove the feature flag for capped expiries of cookies set in 3rd-party CNAME cloaked HTTP responses and add ITP debug logging for when such capping happens.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683493</commentid>
    <comment_count>1</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2020-08-27 15:08:30 -0700</bug_when>
    <thetext>&lt;rdar://problem/66699731&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683498</commentid>
    <comment_count>2</comment_count>
      <attachid>407427</attachid>
    <who name="John Wilander">wilander</who>
    <bug_when>2020-08-27 15:22:19 -0700</bug_when>
    <thetext>Created attachment 407427
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683530</commentid>
    <comment_count>3</comment_count>
      <attachid>407439</attachid>
    <who name="John Wilander">wilander</who>
    <bug_when>2020-08-27 17:04:49 -0700</bug_when>
    <thetext>Created attachment 407439
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683531</commentid>
    <comment_count>4</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2020-08-27 17:05:19 -0700</bug_when>
    <thetext>Trying to fix the non-Cocoa builds.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683533</commentid>
    <comment_count>5</comment_count>
      <attachid>407439</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-08-27 17:10:48 -0700</bug_when>
    <thetext>Comment on attachment 407439
Patch

Lots of nice code removal. R=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683545</commentid>
    <comment_count>6</comment_count>
    <who name="John Wilander">wilander</who>
    <bug_when>2020-08-27 18:09:53 -0700</bug_when>
    <thetext>It seems these two tests may have to be rebased for Windows:

streams/reference-implementation/transform-stream-errors.html
streams/reference-implementation/transform-stream.html

They now get a text diff saying Can&apos;t find variable: TransformStream.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683559</commentid>
    <comment_count>7</comment_count>
      <attachid>407439</attachid>
    <who name="John Wilander">wilander</who>
    <bug_when>2020-08-27 19:23:11 -0700</bug_when>
    <thetext>Comment on attachment 407439
Patch

Thanks for the review, Brent!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683560</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-08-27 19:33:00 -0700</bug_when>
    <thetext>Committed r266268: &lt;https://trac.webkit.org/changeset/266268&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 407439.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407427</attachid>
            <date>2020-08-27 15:22:19 -0700</date>
            <delta_ts>2020-08-27 17:04:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215902-20200827152219.patch</filename>
            <type>text/plain</type>
            <size>27876</size>
            <attacher name="John Wilander">wilander</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2MjQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTU0NjIxYjNiYTRjYzE5
OTM0MDEyODM1YjJkYzFmYzY1ZmE2OTk2Mi4uNmY2OGE1Yzk0ODRjY2Y3YWJhZTlkYTlkMzQ5MDEw
NzdiYTM1Njc3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIwLTA4LTI3ICBKb2hu
IFdpbGFuZGVyICA8d2lsYW5kZXJAYXBwbGUuY29tPgorCisgICAgICAgIFJlbW92ZSB0aGUgZmVh
dHVyZSBmbGFnIGZvciBjYXBwZWQgY29va2llcyBzZXQgaW4gM3JkLXBhcnR5IENOQU1FIGNsb2Fr
ZWQgSFRUUCByZXNwb25zZXMgYW5kIGFkZCBJVFAgZGVidWcgbG9nZ2luZworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1OTAyCisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS82NjY5OTczMT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBUaGlzIGNoYW5nZSByZW1vdmVzIHRoZSBmZWF0dXJlIGZsYWcsIGVmZmVj
dGl2ZWx5IHR1cm5pbmcgdGhlIGZlYXR1cmUgb24uCisgICAgICAgIEl0IGFsc28gYWRkcyBsb2cg
b3V0cHV0IG9mIGNvb2tpZSBuYW1lcyB0aGF0IGhhdmUgYmVlbiBjYXBwZWQgd2hlbiBJVFAKKyAg
ICAgICAgRGVidWcgTW9kZSBpcyBlbmFibGVkLgorCisgICAgICAgIFdlYkNvcmU6Ok5ldHdvcmtT
dG9yYWdlU2Vzc2lvbiBub3cgaGFzIGEgbWVtYmVyIGZsYWcgZm9yIElUUCBkZWJ1ZyBsb2dnaW5n
LgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gVGhpcyBmZWF0dXJlIGFscmVhZHkgaGFzIHRlc3Rz
LgorCisgICAgICAgICogcGFnZS9TZXR0aW5ncy55YW1sOgorICAgICAgICAqIHBsYXRmb3JtL25l
dHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdv
cmtTdG9yYWdlU2Vzc2lvbjo6c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTG9nZ2luZ0Vu
YWJsZWQpOgorICAgICAgICAoV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpyZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzRGVidWdMb2dnaW5nRW5hYmxlZCBjb25zdCk6CisgICAgICAgICAgICBO
ZXcgZnVuY3Rpb24gdG8gYmUgYWJsZSB0byBjb25kaXRpb25hbGl6ZSBsb2cgb3V0cHV0IGluIHRo
ZSBuZXcgZmVhdHVyZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdG9yYWdl
U2Vzc2lvbi5oOgorCiAyMDIwLTA4LTI3ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNv
bT4KIAogICAgICAgICA6aG9zdCgpIHBzZXVkby1zZWxlY3RvciByZXBvcnRlZCBhcyA6aG9zdCBp
biBDU1NTdHlsZVJ1bGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggNmY5ODQzNzA5YzFjNDdhNzcyOGJjZDRmYmQ4YjMw
ODQyMDhkMmFhZC4uYWU1Y2Y4ODYwYTZlMzM4NmRkNzUyOGI1MDFiYzZmMmExMTBhNGExZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKQEAgLTEsMyArMSw0MyBAQAorMjAyMC0wOC0yNyAgSm9obiBXaWxhbmRlciAgPHdpbGFu
ZGVyQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgdGhlIGZlYXR1cmUgZmxhZyBmb3IgY2Fw
cGVkIGNvb2tpZXMgc2V0IGluIDNyZC1wYXJ0eSBDTkFNRSBjbG9ha2VkIEhUVFAgcmVzcG9uc2Vz
IGFuZCBhZGQgSVRQIGRlYnVnIGxvZ2dpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxNTkwMgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjY2OTk3
MzE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhp
cyBjaGFuZ2UgcmVtb3ZlcyB0aGUgZmVhdHVyZSBmbGFnLCBlZmZlY3RpdmVseSB0dXJuaW5nIHRo
ZSBmZWF0dXJlIG9uLgorICAgICAgICBJdCBhbHNvIGFkZHMgbG9nIG91dHB1dCBvZiBjb29raWUg
bmFtZXMgdGhhdCBoYXZlIGJlZW4gY2FwcGVkIHdoZW4gSVRQCisgICAgICAgIERlYnVnIE1vZGUg
aXMgZW5hYmxlZC4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVz
b3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc1N0b3JlOjpzZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2Rl
KToKKyAgICAgICAgICAgIE5vdyBzZXRzIHRoZSBmbGFnIGluIFdlYkNvcmU6Ok5ldHdvcmtTdG9y
YWdlU2Vzc2lvbiB0aHJvdWdoIHRoZSBuZXcgZnVuY3Rpb24KKyAgICAgICAgICAgIFdlYkNvcmU6
Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTG9n
Z2luZ0VuYWJsZWQoKS4KKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5j
cHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjpyZXNldFBhcmFtZXRlcnNUb0Rl
ZmF1bHRWYWx1ZXMpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6c2V0SXNSdW5u
aW5nUmVzb3VyY2VMb2FkU3RhdGlzdGljc1Rlc3QpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNz
L05ldHdvcmtTZXNzaW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Nlc3Npb246Ok5l
dHdvcmtTZXNzaW9uKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Nlc3Npb246OnNldEZpcnN0
UGFydHlIb3N0Q05BTUVEb21haW4pOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU2Vzc2lvbjo6
Zmlyc3RQYXJ0eUhvc3RDTkFNRURvbWFpbik6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0
d29ya1Nlc3Npb24uaDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Nlc3Npb246OnNldENOQU1F
Q2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtTZXNzaW9uOjpjbmFtZUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQgY29uc3QpOiBEZWxl
dGVkLgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtEYXRhVGFza0NvY29h
Lm1tOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrRGF0YVRhc2tDb2NvYTo6dXBkYXRlRmlyc3RQ
YXJ0eUluZm9Gb3JTZXNzaW9uKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0RhdGFUYXNrQ29j
b2E6OmFwcGx5Q29va2llUG9saWN5Rm9yVGhpcmRQYXJ0eUNOQU1FQ2xvYWtpbmcpOgorICAgICAg
ICAqIFNoYXJlZC9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy5oOgorICAgICAgICAo
V2ViS2l0OjpSZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVyczo6ZW5jb2RlIGNvbnN0KToK
KyAgICAgICAgKFdlYktpdDo6UmVzb3VyY2VMb2FkU3RhdGlzdGljc1BhcmFtZXRlcnM6OmRlY29k
ZSk6CisgICAgICAgICogU2hhcmVkL1dlYlByZWZlcmVuY2VzLnlhbWw6CisgICAgICAgICogVUlQ
cm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bv
b2w6OmVuc3VyZU5ldHdvcmtQcm9jZXNzKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vic2l0ZURh
dGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJz
aXRlRGF0YVN0b3JlOjpwbGF0Zm9ybVNldE5ldHdvcmtQYXJhbWV0ZXJzKToKKyAgICAgICAgKiBV
SVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYnNpdGVEYXRhU3RvcmU6OnBhcmFtZXRlcnMpOgorCiAyMDIwLTA4LTI3ICBKZXIgTm9i
bGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04ocjI2NDcxMCk6
IEluaXRpYWxpemluZyB0aGUgQVZQbGF5ZXIgT2JqLUMgY2xhc3MgYXQgcHJvY2VzcyBzdGFydCB1
cCBjYXVzZXMgYSByZWdyZXNzaW9uIGluIHBvd2VyLXVzZSB0ZXN0cwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy55YW1sIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0
aW5ncy55YW1sCmluZGV4IDFhNDUzNTgwOWMwYjc0MTk0ZjVjYzk4ZjZkZWRiZjM3NGY3MmVjMWEu
Ljk3ZTA2YjQyOWY2ZDA5MzNlOTZhMDE3ZjU3N2Q2ZDdlMDNmOGQzNzcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MueWFtbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1NldHRpbmdzLnlhbWwKQEAgLTkzMyw5ICs5MzMsNiBAQCBpc0ZpcnN0UGFydHlXZWJzaXRlRGF0
YVJlbW92YWxSZXByb1Rlc3RpbmdFbmFibGVkOgogaXNTYW1lU2l0ZVN0cmljdEVuZm9yY2VtZW50
RW5hYmxlZDoKICAgaW5pdGlhbDogZmFsc2UKIAotaXNDTkFNRUNsb2FraW5nTWl0aWdhdGlvbkVu
YWJsZWQ6Ci0gIGluaXRpYWw6IGZhbHNlCi0KIGlzTG9nZ2VkSW5BUElFbmFibGVkOgogICBpbml0
aWFsOiBmYWxzZQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5jcHAKaW5kZXggYzUzMzIxZTFjYmEzZGQ5NzRmOTcw
Yzc1OTEwNmE3ZjgxN2UyMGI3OC4uYjEyYTdjYzE2ZmZjMDI5YjM5NzdhNTAzNjM5OTliY2FiY2Rj
YTExMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3Jr
U3RvcmFnZVNlc3Npb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
TmV0d29ya1N0b3JhZ2VTZXNzaW9uLmNwcApAQCAtNzcsNiArNzcsMTYgQEAgYm9vbCBOZXR3b3Jr
U3RvcmFnZVNlc3Npb246OnJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKCkgY29uc3QKIHsK
ICAgICByZXR1cm4gbV9pc1Jlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkOwogfQorCit2b2lk
IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTG9n
Z2luZ0VuYWJsZWQoYm9vbCBlbmFibGVkKQoreworICAgIG1faXNSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzRGVidWdMb2dnaW5nRW5hYmxlZCA9IGVuYWJsZWQ7Cit9CisKK2Jvb2wgTmV0d29ya1N0b3Jh
Z2VTZXNzaW9uOjpyZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdMb2dnaW5nRW5hYmxlZCgpIGNv
bnN0Cit7CisgICAgcmV0dXJuIG1faXNSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdMb2dnaW5n
RW5hYmxlZDsKK30KICNlbmRpZgogCiBib29sIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c2hvdWxk
QmxvY2tUaGlyZFBhcnR5Q29va2llcyhjb25zdCBSZWdpc3RyYWJsZURvbWFpbiYgcmVnaXN0cmFi
bGVEb21haW4pIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0
d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaAppbmRleCA0MzlkYTFmNzlkMGQ5NmIxMTZkYjY3
ZTU2YzczZTk4MWVmZmNjMDRmLi4yOGM0NzAyOTk3OTQ2Yjg5ODY1M2UzZTdjMzA4MGY1MGVkYTQz
ZmFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtT
dG9yYWdlU2Vzc2lvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0
d29ya1N0b3JhZ2VTZXNzaW9uLmgKQEAgLTg1LDcgKzg1LDYgQEAgZW51bSBjbGFzcyBJbmNsdWRl
U2VjdXJlQ29va2llcyA6IGJvb2w7CiBlbnVtIGNsYXNzIEluY2x1ZGVIdHRwT25seUNvb2tpZXMg
OiBib29sOwogZW51bSBjbGFzcyBUaGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlIDogdWludDhf
dCB7IEFsbCwgQWxsRXhjZXB0QmV0d2VlbkFwcEJvdW5kRG9tYWlucywgQWxsT25TaXRlc1dpdGhv
dXRVc2VySW50ZXJhY3Rpb24sIE9ubHlBY2NvcmRpbmdUb1BlckRvbWFpblBvbGljeSB9OwogZW51
bSBjbGFzcyBTYW1lU2l0ZVN0cmljdEVuZm9yY2VtZW50RW5hYmxlZCA6IGJvb2wgeyBZZXMsIE5v
IH07Ci1lbnVtIGNsYXNzIENOQU1FQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZCA6IGJvb2wgeyBZ
ZXMsIE5vIH07CiBlbnVtIGNsYXNzIEZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlIDog
dWludDhfdCB7IEFsbEJ1dENvb2tpZXMsIE5vbmUsIEFsbEJ1dENvb2tpZXNMaXZlT25UZXN0aW5n
VGltZW91dCwgQWxsQnV0Q29va2llc1JlcHJvVGVzdGluZ1RpbWVvdXQgfTsKIGVudW0gY2xhc3Mg
U2hvdWxkQXNrSVRQIDogYm9vbCB7IE5vLCBZZXMgfTsKIApAQCAtMTg2LDYgKzE4NSw4IEBAIHB1
YmxpYzoKICNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNUSUNTKQogICAgIFdFQkNPUkVf
RVhQT1JUIHZvaWQgc2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJsZWQoYm9vbCk7CiAgICAg
V0VCQ09SRV9FWFBPUlQgYm9vbCByZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCgpIGNvbnN0
OworICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgc2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVn
TG9nZ2luZ0VuYWJsZWQoYm9vbCk7CisgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCByZXNvdXJjZUxv
YWRTdGF0aXN0aWNzRGVidWdMb2dnaW5nRW5hYmxlZCgpIGNvbnN0OwogICAgIFdFQkNPUkVfRVhQ
T1JUIGJvb2wgc2hvdWxkQmxvY2tDb29raWVzKGNvbnN0IFJlc291cmNlUmVxdWVzdCYsIE9wdGlv
bmFsPEZyYW1lSWRlbnRpZmllcj4sIE9wdGlvbmFsPFBhZ2VJZGVudGlmaWVyPiwgU2hvdWxkUmVs
YXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcpIGNvbnN0OwogICAgIFdFQkNPUkVfRVhQT1JUIGJv
b2wgc2hvdWxkQmxvY2tDb29raWVzKGNvbnN0IFVSTCYgZmlyc3RQYXJ0eUZvckNvb2tpZXMsIGNv
bnN0IFVSTCYgcmVzb3VyY2UsIE9wdGlvbmFsPEZyYW1lSWRlbnRpZmllcj4sIE9wdGlvbmFsPFBh
Z2VJZGVudGlmaWVyPiwgU2hvdWxkUmVsYXhUaGlyZFBhcnR5Q29va2llQmxvY2tpbmcpIGNvbnN0
OwogICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgc2hvdWxkQmxvY2tUaGlyZFBhcnR5Q29va2llcyhj
b25zdCBSZWdpc3RyYWJsZURvbWFpbiYpIGNvbnN0OwpAQCAtMjU5LDYgKzI2MCw3IEBAIHByaXZh
dGU6CiAKICNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNUSUNTKQogICAgIGJvb2wgbV9p
c1Jlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkID0gZmFsc2U7CisgICAgYm9vbCBtX2lzUmVz
b3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTG9nZ2luZ0VuYWJsZWQgPSBmYWxzZTsKICAgICBPcHRp
b25hbDxTZWNvbmRzPiBjbGllbnRTaWRlQ29va2llQ2FwKGNvbnN0IFRvcEZyYW1lRG9tYWluJiwg
T3B0aW9uYWw8UGFnZUlkZW50aWZpZXI+KSBjb25zdDsKICAgICBib29sIHNob3VsZEV4ZW1wdERv
bWFpblBhaXJGcm9tVGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nKGNvbnN0IFRvcEZyYW1lRG9tYWlu
JiwgY29uc3QgU3ViUmVzb3VyY2VEb21haW4mKSBjb25zdDsKICAgICBIYXNoU2V0PFJlZ2lzdHJh
YmxlRG9tYWluPiBtX3JlZ2lzdHJhYmxlRG9tYWluc1RvQmxvY2tBbmREZWxldGVDb29raWVzRm9y
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9DbGFzc2lmaWVyL1dl
YlJlc291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNwcAppbmRl
eCBlMDM4MjQ4OGI2OTY0N2U5OTEwZTE2N2IyZWQ0ZjQxNTIxNDliYzA2Li40ZGU5YWFjNmM4NGU2
YTRkYjI5NGFlMjJiNDRlZTM2NWZlYWIwY2NlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc1N0b3JlLmNwcApAQCAtMzAyLDYgKzMwMiwxMSBAQCB2b2lkIFdlYlJl
c291cmNlTG9hZFN0YXRpc3RpY3NTdG9yZTo6c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVn
TW9kZShib29sIHZhbAogICAgICAgICByZXR1cm47CiAgICAgfQogCisgICAgaWYgKG1fbmV0d29y
a1Nlc3Npb24pIHsKKyAgICAgICAgaWYgKGF1dG8qIHN0b3JhZ2VTZXNzaW9uID0gbV9uZXR3b3Jr
U2Vzc2lvbi0+bmV0d29ya1N0b3JhZ2VTZXNzaW9uKCkpCisgICAgICAgICAgICBzdG9yYWdlU2Vz
c2lvbi0+c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTG9nZ2luZ0VuYWJsZWQodmFsdWUp
OworICAgIH0KKwogICAgIHBvc3RUYXNrKFt0aGlzLCB2YWx1ZSwgY29tcGxldGlvbkhhbmRsZXIg
PSBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKV0oKSBtdXRhYmxlIHsKICAgICAgICAgaWYgKG1f
c3RhdGlzdGljc1N0b3JlKQogICAgICAgICAgICAgbV9zdGF0aXN0aWNzU3RvcmUtPnNldFJlc291
cmNlTG9hZFN0YXRpc3RpY3NEZWJ1Z01vZGUodmFsdWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHAgYi9Tb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAppbmRleCBlMWEwNjQ2M2I3NTU3N2MzYWI2
NzJhNjJhNDdmYTJkZTg4NDAwMzRkLi4zMDA1M2RhNGQ3N2EzMWE5ZmZhMmI1MmNhMzFmM2NjNzdh
OTI5MTQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQ
cm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9j
ZXNzLmNwcApAQCAtODE1LDcgKzgxNSw2IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OnJlc2V0UGFy
YW1ldGVyc1RvRGVmYXVsdFZhbHVlcyhQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIENvCiB7CiAg
ICAgaWYgKGF1dG8qIG5ldHdvcmtTZXNzaW9uID0gdGhpcy0+bmV0d29ya1Nlc3Npb24oc2Vzc2lv
bklEKSkgewogICAgICAgICBuZXR3b3JrU2Vzc2lvbi0+cmVzZXRDTkFNRURvbWFpbkRhdGEoKTsK
LSAgICAgICAgbmV0d29ya1Nlc3Npb24tPnNldENOQU1FQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxl
ZChXZWJDb3JlOjpDTkFNRUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQ6Ok5vKTsKICAgICAgICAg
aWYgKGF1dG8qIHJlc291cmNlTG9hZFN0YXRpc3RpY3MgPSBuZXR3b3JrU2Vzc2lvbi0+cmVzb3Vy
Y2VMb2FkU3RhdGlzdGljcygpKQogICAgICAgICAgICAgcmVzb3VyY2VMb2FkU3RhdGlzdGljcy0+
cmVzZXRQYXJhbWV0ZXJzVG9EZWZhdWx0VmFsdWVzKFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIp
KTsKICAgICAgICAgZWxzZQpAQCAtODY4LDcgKzg2Nyw2IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6
OnNldE5vdGlmeVBhZ2VzV2hlbkRhdGFSZWNvcmRzV2VyZVNjYW5uZWQoUEFMOjpTZXNzaW9uSUQg
c2VzCiB2b2lkIE5ldHdvcmtQcm9jZXNzOjpzZXRJc1J1bm5pbmdSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzVGVzdChQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGJvb2wgdmFsdWUsIENvbXBsZXRpb25I
YW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKICAgICBpZiAoYXV0byogbmV0
d29ya1Nlc3Npb24gPSB0aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKSB7Ci0gICAgICAg
IG5ldHdvcmtTZXNzaW9uLT5zZXRDTkFNRUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQoV2ViQ29y
ZTo6Q05BTUVDbG9ha2luZ01pdGlnYXRpb25FbmFibGVkOjpZZXMpOwogICAgICAgICBpZiAoYXV0
byogcmVzb3VyY2VMb2FkU3RhdGlzdGljcyA9IG5ldHdvcmtTZXNzaW9uLT5yZXNvdXJjZUxvYWRT
dGF0aXN0aWNzKCkpCiAgICAgICAgICAgICByZXNvdXJjZUxvYWRTdGF0aXN0aWNzLT5zZXRJc1J1
bm5pbmdUZXN0KHZhbHVlLCBXVEZNb3ZlKGNvbXBsZXRpb25IYW5kbGVyKSk7CiAgICAgICAgIGVs
c2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Np
b24uY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbi5jcHAK
aW5kZXggYTdjYjE3NDQ5YzRmNDcyMzhiMTVjZGE5NjY0MTNjMGZiODYxZmRlNy4uYmMyOGFjOGY0
YzcwNGZhNmI3NzE0MTU4Nzc4ODhjMjg1MGM0ZDhmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbi5jcHAKQEAgLTkwLDcgKzkwLDYgQEAgTmV0d29y
a1Nlc3Npb246Ok5ldHdvcmtTZXNzaW9uKE5ldHdvcmtQcm9jZXNzJiBuZXR3b3JrUHJvY2Vzcywg
Y29uc3QgTmV0d29ya1Nlc3MKICAgICAsIG1fc2FtZVNpdGVTdHJpY3RFbmZvcmNlbWVudEVuYWJs
ZWQocGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy5zYW1lU2l0ZVN0
cmljdEVuZm9yY2VtZW50RW5hYmxlZCkKICAgICAsIG1fZmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVt
b3ZhbE1vZGUocGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy5maXJz
dFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZSkKICAgICAsIG1fc3RhbmRhbG9uZUFwcGxpY2F0
aW9uRG9tYWluKHBhcmFtZXRlcnMucmVzb3VyY2VMb2FkU3RhdGlzdGljc1BhcmFtZXRlcnMuc3Rh
bmRhbG9uZUFwcGxpY2F0aW9uRG9tYWluKQotICAgICwgbV9jbmFtZUNsb2FraW5nTWl0aWdhdGlv
bkVuYWJsZWQocGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy5jbmFt
ZUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQpCiAjZW5kaWYKICAgICAsIG1fYWRDbGlja0F0dHJp
YnV0aW9uKG1ha2VVbmlxdWVSZWY8QWRDbGlja0F0dHJpYnV0aW9uTWFuYWdlcj4obmV0d29ya1By
b2Nlc3MsIHBhcmFtZXRlcnMuc2Vzc2lvbklEKSkKICAgICAsIG1fdGVzdFNwZWVkTXVsdGlwbGll
cihwYXJhbWV0ZXJzLnRlc3RTcGVlZE11bHRpcGxpZXIpCkBAIC0yODUsOSArMjg0LDYgQEAgdm9p
ZCBOZXR3b3JrU2Vzc2lvbjo6c2V0U2hvdWxkRW5ibGVTYW1lU2l0ZVN0cmljdEVuZm9yY2VtZW50
KFdlYkNvcmU6OlNhbWVTaXRlU3QKIHZvaWQgTmV0d29ya1Nlc3Npb246OnNldEZpcnN0UGFydHlI
b3N0Q05BTUVEb21haW4oU3RyaW5nJiYgZmlyc3RQYXJ0eUhvc3QsIFdlYkNvcmU6OlJlZ2lzdHJh
YmxlRG9tYWluJiYgY25hbWVEb21haW4pCiB7CiAjaWYgSEFWRShDRk5FVFdPUktfQ05BTUVfQU5E
X0NPT0tJRV9UUkFOU0ZPUk1fU1BJKQotICAgIGlmICghY25hbWVDbG9ha2luZ01pdGlnYXRpb25F
bmFibGVkKCkpCi0gICAgICAgIHJldHVybjsKLQogICAgIEFTU0VSVCghZmlyc3RQYXJ0eUhvc3Qu
aXNFbXB0eSgpICYmICFjbmFtZURvbWFpbi5pc0VtcHR5KCkgJiYgZmlyc3RQYXJ0eUhvc3QgIT0g
Y25hbWVEb21haW4uc3RyaW5nKCkpOwogICAgIGlmIChmaXJzdFBhcnR5SG9zdC5pc0VtcHR5KCkg
fHwgY25hbWVEb21haW4uaXNFbXB0eSgpIHx8IGZpcnN0UGFydHlIb3N0ID09IGNuYW1lRG9tYWlu
LnN0cmluZygpKQogICAgICAgICByZXR1cm47CkBAIC0zMDEsOSArMjk3LDYgQEAgdm9pZCBOZXR3
b3JrU2Vzc2lvbjo6c2V0Rmlyc3RQYXJ0eUhvc3RDTkFNRURvbWFpbihTdHJpbmcmJiBmaXJzdFBh
cnR5SG9zdCwgV2ViQ28KIE9wdGlvbmFsPFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluPiBOZXR3
b3JrU2Vzc2lvbjo6Zmlyc3RQYXJ0eUhvc3RDTkFNRURvbWFpbihjb25zdCBTdHJpbmcmIGZpcnN0
UGFydHlIb3N0KQogewogI2lmIEhBVkUoQ0ZORVRXT1JLX0NOQU1FX0FORF9DT09LSUVfVFJBTlNG
T1JNX1NQSSkKLSAgICBpZiAoIWNuYW1lQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZCgpKQotICAg
ICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwotCiAgICAgYXV0byBpdGVyYXRvciA9IG1fZmlyc3RQ
YXJ0eUhvc3RDTkFNRURvbWFpbnMuZmluZChmaXJzdFBhcnR5SG9zdCk7CiAgICAgaWYgKGl0ZXJh
dG9yID09IG1fZmlyc3RQYXJ0eUhvc3RDTkFNRURvbWFpbnMuZW5kKCkpCiAgICAgICAgIHJldHVy
biBXVEY6Om51bGxvcHQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L05ldHdvcmtTZXNzaW9uLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtT
ZXNzaW9uLmgKaW5kZXggNWQzZWYwZWY2ZWIxMWY1MDFjYmZjODRiMzg3YTc5YTQ4MzZjOTlhYy4u
MWEwODczY2VjYWU1NmIyZjJmMTY3NTZjYzM1ODhjYzM2ZDRjMzM4YSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbi5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb24uaApAQCAtMTA1LDggKzEwNSw2IEBA
IHB1YmxpYzoKICAgICBib29sIHNob3VsZERvd25ncmFkZVJlZmVycmVyKCkgY29uc3Q7CiAgICAg
dm9pZCBzZXRUaGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlKFdlYkNvcmU6OlRoaXJkUGFydHlD
b29raWVCbG9ja2luZ01vZGUpOwogICAgIHZvaWQgc2V0U2hvdWxkRW5ibGVTYW1lU2l0ZVN0cmlj
dEVuZm9yY2VtZW50KFdlYkNvcmU6OlNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnRFbmFibGVkKTsK
LSAgICB2b2lkIHNldENOQU1FQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZChXZWJDb3JlOjpDTkFN
RUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQgdmFsdWUpIHsgbV9jbmFtZUNsb2FraW5nTWl0aWdh
dGlvbkVuYWJsZWQgPSB2YWx1ZTsgfQotICAgIGJvb2wgY25hbWVDbG9ha2luZ01pdGlnYXRpb25F
bmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV9jbmFtZUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQg
PT0gV2ViQ29yZTo6Q05BTUVDbG9ha2luZ01pdGlnYXRpb25FbmFibGVkOjpZZXM7IH0KICAgICB2
b2lkIHNldEZpcnN0UGFydHlIb3N0Q05BTUVEb21haW4oU3RyaW5nJiYgZmlyc3RQYXJ0eUhvc3Qs
IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJiYgY25hbWVEb21haW4pOwogICAgIE9wdGlvbmFs
PFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluPiBmaXJzdFBhcnR5SG9zdENOQU1FRG9tYWluKGNv
bnN0IFN0cmluZyYgZmlyc3RQYXJ0eUhvc3QpOwogICAgIHZvaWQgc2V0VGhpcmRQYXJ0eUNOQU1F
RG9tYWluRm9yVGVzdGluZyhXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiYmIGRvbWFpbikgeyBt
X3RoaXJkUGFydHlDTkFNRURvbWFpbkZvclRlc3RpbmcgPSBXVEZNb3ZlKGRvbWFpbik7IH07CkBA
IC0xNzMsNyArMTcxLDYgQEAgcHJvdGVjdGVkOgogICAgIFdlYkNvcmU6OlNhbWVTaXRlU3RyaWN0
RW5mb3JjZW1lbnRFbmFibGVkIG1fc2FtZVNpdGVTdHJpY3RFbmZvcmNlbWVudEVuYWJsZWQgeyBX
ZWJDb3JlOjpTYW1lU2l0ZVN0cmljdEVuZm9yY2VtZW50RW5hYmxlZDo6Tm8gfTsKICAgICBXZWJD
b3JlOjpGaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZSBtX2ZpcnN0UGFydHlXZWJzaXRl
RGF0YVJlbW92YWxNb2RlIHsgV2ViQ29yZTo6Rmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1v
ZGU6OkFsbEJ1dENvb2tpZXMgfTsKICAgICBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiBtX3N0
YW5kYWxvbmVBcHBsaWNhdGlvbkRvbWFpbjsKLSAgICBXZWJDb3JlOjpDTkFNRUNsb2FraW5nTWl0
aWdhdGlvbkVuYWJsZWQgbV9jbmFtZUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQgeyBXZWJDb3Jl
OjpDTkFNRUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQ6Ok5vIH07CiAgICAgSGFzaE1hcDxTdHJp
bmcsIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluPiBtX2ZpcnN0UGFydHlIb3N0Q05BTUVEb21h
aW5zOwogICAgIE9wdGlvbmFsPFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluPiBtX3RoaXJkUGFy
dHlDTkFNRURvbWFpbkZvclRlc3Rpbmc7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya0RhdGFUYXNrQ29jb2EubW0gYi9Tb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtEYXRhVGFza0NvY29hLm1tCmluZGV4
IDg0ZTVkNDBjYTI0M2FkOTA2ZjYzNjYxNjY4NDBlY2RkYzU5ODg4M2QuLjNlODE3ZmVmODUzYWUw
MWY4ZjFlOGYzNGUyMzdlNTE0NTU5MDczNDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvY29jb2EvTmV0d29ya0RhdGFUYXNrQ29jb2EubW0KKysrIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrRGF0YVRhc2tDb2NvYS5tbQpAQCAtMTUz
LDcgKzE1Myw3IEBAIHN0YXRpYyBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiBsYXN0Q05BTUVE
b21haW4oTlNBcnJheTxOU1N0cmluZyAqPiAqY25hbWVzKQogCiB2b2lkIE5ldHdvcmtEYXRhVGFz
a0NvY29hOjp1cGRhdGVGaXJzdFBhcnR5SW5mb0ZvclNlc3Npb24oY29uc3QgVVJMJiByZXF1ZXN0
VVJMKQogewotICAgIGlmICghaGFzQ05BTUVBbmRDb29raWVUcmFuc2Zvcm1TUEkobV90YXNrLmdl
dCgpKSB8fCAhbmV0d29ya1Nlc3Npb24oKSB8fCAhbmV0d29ya1Nlc3Npb24oKS0+bmV0d29ya1N0
b3JhZ2VTZXNzaW9uKCkgfHwgIW5ldHdvcmtTZXNzaW9uKCktPm5ldHdvcmtTdG9yYWdlU2Vzc2lv
bigpLT5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzRW5hYmxlZCgpIHx8ICFuZXR3b3JrU2Vzc2lvbigp
LT5jbmFtZUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQoKSB8fCByZXF1ZXN0VVJMLmhvc3QoKS5p
c0VtcHR5KCkpCisgICAgaWYgKCFoYXNDTkFNRUFuZENvb2tpZVRyYW5zZm9ybVNQSShtX3Rhc2su
Z2V0KCkpIHx8ICFuZXR3b3JrU2Vzc2lvbigpIHx8ICFuZXR3b3JrU2Vzc2lvbigpLT5uZXR3b3Jr
U3RvcmFnZVNlc3Npb24oKSB8fCAhbmV0d29ya1Nlc3Npb24oKS0+bmV0d29ya1N0b3JhZ2VTZXNz
aW9uKCktPnJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKCkgfHwgcmVxdWVzdFVSTC5ob3N0
KCkuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAKICAgICBhdXRvIGNuYW1lRG9tYWluID0g
bGFzdENOQU1FRG9tYWluKFttX3Rhc2sgX3Jlc29sdmVkQ05BTUVDaGFpbl0pOwpAQCAtMTYzLDcg
KzE2Myw3IEBAIHZvaWQgTmV0d29ya0RhdGFUYXNrQ29jb2E6OnVwZGF0ZUZpcnN0UGFydHlJbmZv
Rm9yU2Vzc2lvbihjb25zdCBVUkwmIHJlcXVlc3RVUkwpCiAKIHZvaWQgTmV0d29ya0RhdGFUYXNr
Q29jb2E6OmFwcGx5Q29va2llUG9saWN5Rm9yVGhpcmRQYXJ0eUNOQU1FQ2xvYWtpbmcoY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewotICAgIGlmICghaGFzQ05BTUVB
bmRDb29raWVUcmFuc2Zvcm1TUEkobV90YXNrLmdldCgpKSB8fCBpc1RvcExldmVsTmF2aWdhdGlv
bigpIHx8ICFuZXR3b3JrU2Vzc2lvbigpIHx8ICFuZXR3b3JrU2Vzc2lvbigpLT5uZXR3b3JrU3Rv
cmFnZVNlc3Npb24oKSB8fCAhbmV0d29ya1Nlc3Npb24oKS0+bmV0d29ya1N0b3JhZ2VTZXNzaW9u
KCktPnJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKCkgfHwgIW5ldHdvcmtTZXNzaW9uKCkt
PmNuYW1lQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZCgpKQorICAgIGlmICghaGFzQ05BTUVBbmRD
b29raWVUcmFuc2Zvcm1TUEkobV90YXNrLmdldCgpKSB8fCBpc1RvcExldmVsTmF2aWdhdGlvbigp
IHx8ICFuZXR3b3JrU2Vzc2lvbigpIHx8ICFuZXR3b3JrU2Vzc2lvbigpLT5uZXR3b3JrU3RvcmFn
ZVNlc3Npb24oKSB8fCAhbmV0d29ya1Nlc3Npb24oKS0+bmV0d29ya1N0b3JhZ2VTZXNzaW9uKCkt
PnJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsKIAogICAg
IGlmIChpc1RoaXJkUGFydHlSZXF1ZXN0KHJlcXVlc3QpKSB7CkBAIC0xNzcsNyArMTc3LDcgQEAg
dm9pZCBOZXR3b3JrRGF0YVRhc2tDb2NvYTo6YXBwbHlDb29raWVQb2xpY3lGb3JUaGlyZFBhcnR5
Q05BTUVDbG9ha2luZyhjb25zdCBXZWIKICAgICBhdXRvIGZpcnN0UGFydHlVUkwgPSByZXF1ZXN0
LmZpcnN0UGFydHlGb3JDb29raWVzKCk7CiAgICAgYXV0byBmaXJzdFBhcnR5SG9zdENOQU1FID0g
bmV0d29ya1Nlc3Npb24oKS0+Zmlyc3RQYXJ0eUhvc3RDTkFNRURvbWFpbihmaXJzdFBhcnR5VVJM
Lmhvc3QoKS50b1N0cmluZygpKTsKIAotICAgIG1fdGFzay5nZXQoKS5fY29va2llVHJhbnNmb3Jt
Q2FsbGJhY2sgPSBtYWtlQmxvY2tQdHIoW3JlcXVlc3RVUkwgPSBjcm9zc1RocmVhZENvcHkocmVx
dWVzdC51cmwoKSksIGZpcnN0UGFydHlVUkwgPSBjcm9zc1RocmVhZENvcHkoZmlyc3RQYXJ0eVVS
TCksIGZpcnN0UGFydHlIb3N0Q05BTUUgPSBjcm9zc1RocmVhZENvcHkoZmlyc3RQYXJ0eUhvc3RD
TkFNRSksIHRoaXJkUGFydHlDTkFNRURvbWFpbkZvclRlc3RpbmcgPSBjcm9zc1RocmVhZENvcHko
bmV0d29ya1Nlc3Npb24oKS0+dGhpcmRQYXJ0eUNOQU1FRG9tYWluRm9yVGVzdGluZygpKSwgYWdl
Q2FwRm9yQ05BTUVDbG9ha2VkQ29va2llcyA9IGNyb3NzVGhyZWFkQ29weShtX2FnZUNhcEZvckNO
QU1FQ2xvYWtlZENvb2tpZXMpLCB0YXNrID0gbV90YXNrXSAoTlNBcnJheTxOU0hUVFBDb29raWUq
PiAqY29va2llc1NldEluUmVzcG9uc2UpIC0+IE5TQXJyYXk8TlNIVFRQQ29va2llKj4gKiB7Cisg
ICAgbV90YXNrLmdldCgpLl9jb29raWVUcmFuc2Zvcm1DYWxsYmFjayA9IG1ha2VCbG9ja1B0cihb
cmVxdWVzdFVSTCA9IGNyb3NzVGhyZWFkQ29weShyZXF1ZXN0LnVybCgpKSwgZmlyc3RQYXJ0eVVS
TCA9IGNyb3NzVGhyZWFkQ29weShmaXJzdFBhcnR5VVJMKSwgZmlyc3RQYXJ0eUhvc3RDTkFNRSA9
IGNyb3NzVGhyZWFkQ29weShmaXJzdFBhcnR5SG9zdENOQU1FKSwgdGhpcmRQYXJ0eUNOQU1FRG9t
YWluRm9yVGVzdGluZyA9IGNyb3NzVGhyZWFkQ29weShuZXR3b3JrU2Vzc2lvbigpLT50aGlyZFBh
cnR5Q05BTUVEb21haW5Gb3JUZXN0aW5nKCkpLCBhZ2VDYXBGb3JDTkFNRUNsb2FrZWRDb29raWVz
ID0gY3Jvc3NUaHJlYWRDb3B5KG1fYWdlQ2FwRm9yQ05BTUVDbG9ha2VkQ29va2llcyksIHRhc2sg
PSBtX3Rhc2ssIGRlYnVnTG9nZ2luZ0VuYWJsZWQgPSBuZXR3b3JrU2Vzc2lvbigpLT5uZXR3b3Jr
U3RvcmFnZVNlc3Npb24oKS0+cmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTG9nZ2luZ0VuYWJs
ZWQoKV0gKE5TQXJyYXk8TlNIVFRQQ29va2llKj4gKmNvb2tpZXNTZXRJblJlc3BvbnNlKSAtPiBO
U0FycmF5PE5TSFRUUENvb2tpZSo+ICogewogICAgICAgICBpZiAoIVtjb29raWVzU2V0SW5SZXNw
b25zZSBjb3VudF0pCiAgICAgICAgICAgICByZXR1cm4gY29va2llc1NldEluUmVzcG9uc2U7CiAK
QEAgLTIwMiw2ICsyMDIsOCBAQCB2b2lkIE5ldHdvcmtEYXRhVGFza0NvY29hOjphcHBseUNvb2tp
ZVBvbGljeUZvclRoaXJkUGFydHlDTkFNRUNsb2FraW5nKGNvbnN0IFdlYgogICAgICAgICAgICAg
ICAgIE5TSFRUUENvb2tpZSAqY29va2llID0gKE5TSFRUUENvb2tpZSAqKVtjb29raWVzU2V0SW5S
ZXNwb25zZSBvYmplY3RBdEluZGV4OmldOwogICAgICAgICAgICAgICAgIGNvb2tpZSA9IFdlYkNv
cmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y2FwRXhwaXJ5T2ZQZXJzaXN0ZW50Q29va2llKGNv
b2tpZSwgYWdlQ2FwRm9yQ05BTUVDbG9ha2VkQ29va2llcyk7CiAgICAgICAgICAgICAgICAgW2Nh
cHBlZENvb2tpZXMgYWRkT2JqZWN0OmNvb2tpZV07CisgICAgICAgICAgICAgICAgaWYgKGRlYnVn
TG9nZ2luZ0VuYWJsZWQpCisgICAgICAgICAgICAgICAgICAgIFJFTEVBU0VfTE9HX0lORk8oSVRQ
RGVidWcsICJDYXBwZWQgdGhlIGV4cGlyeSBvZiB0aGlyZC1wYXJ0eSBDTkFNRSBjbG9ha2VkIGNv
b2tpZSBuYW1lZCAlcy4iLCBbW2Nvb2tpZSBuYW1lXSBVVEY4U3RyaW5nXSk7CiAgICAgICAgICAg
ICB9CiAgICAgICAgICAgICByZXR1cm4gY2FwcGVkQ29va2llczsKICAgICAgICAgfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvUmVzb3VyY2VMb2FkU3RhdGlzdGljc1BhcmFtZXRl
cnMuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1Jlc291cmNlTG9hZFN0YXRpc3RpY3NQYXJhbWV0
ZXJzLmgKaW5kZXggYWNiMzRlYWIxMTY1N2MwMzNjNTJhZTNhZWIwMTg1ODI1ZTBkNzc4Yy4uNjBk
ZTM1ZjZhZTk1N2Q3MDY3NTk0OTY0NzNjZTM1MTY0MjQxZTJlYiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9TaGFyZWQvUmVzb3VyY2VMb2FkU3RhdGlzdGljc1BhcmFtZXRlcnMuaAorKysgYi9T
b3VyY2UvV2ViS2l0L1NoYXJlZC9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy5oCkBA
IC00NSw3ICs0NSw2IEBAIHN0cnVjdCBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycyB7
CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElTVElDUykKICAgICBXZWJDb3JlOjpUaGly
ZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlIHRoaXJkUGFydHlDb29raWVCbG9ja2luZ01vZGUgeyBX
ZWJDb3JlOjpUaGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlOjpBbGwgfTsKICAgICBXZWJDb3Jl
OjpTYW1lU2l0ZVN0cmljdEVuZm9yY2VtZW50RW5hYmxlZCBzYW1lU2l0ZVN0cmljdEVuZm9yY2Vt
ZW50RW5hYmxlZCB7IFdlYkNvcmU6OlNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnRFbmFibGVkOjpO
byB9OwotICAgIFdlYkNvcmU6OkNOQU1FQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZCBjbmFtZUNs
b2FraW5nTWl0aWdhdGlvbkVuYWJsZWQgeyBXZWJDb3JlOjpDTkFNRUNsb2FraW5nTWl0aWdhdGlv
bkVuYWJsZWQ6Ok5vIH07CiAjZW5kaWYKICAgICBXZWJDb3JlOjpGaXJzdFBhcnR5V2Vic2l0ZURh
dGFSZW1vdmFsTW9kZSBmaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZSB7IFdlYkNvcmU6
OkZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlOjpBbGxCdXRDb29raWVzIH07CiAgICAg
V2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4gc3RhbmRhbG9uZUFwcGxpY2F0aW9uRG9tYWluOwpA
QCAtNjQsNyArNjMsNiBAQCBzdHJ1Y3QgUmVzb3VyY2VMb2FkU3RhdGlzdGljc1BhcmFtZXRlcnMg
ewogI2lmIEVOQUJMRShSRVNPVVJDRV9MT0FEX1NUQVRJU1RJQ1MpCiAgICAgICAgIGVuY29kZXIg
PDwgdGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZTsKICAgICAgICAgZW5jb2RlciA8PCBzYW1l
U2l0ZVN0cmljdEVuZm9yY2VtZW50RW5hYmxlZDsKLSAgICAgICAgZW5jb2RlciA8PCBjbmFtZUNs
b2FraW5nTWl0aWdhdGlvbkVuYWJsZWQ7CiAjZW5kaWYKICAgICAgICAgZW5jb2RlciA8PCBmaXJz
dFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZTsKICAgICAgICAgZW5jb2RlciA8PCBzdGFuZGFs
b25lQXBwbGljYXRpb25Eb21haW47CkBAIC0xMTksMTEgKzExNyw2IEBAIHN0cnVjdCBSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycyB7CiAgICAgICAgIGRlY29kZXIgPj4gc2FtZVNpdGVT
dHJpY3RFbmZvcmNlbWVudEVuYWJsZWQ7CiAgICAgICAgIGlmICghc2FtZVNpdGVTdHJpY3RFbmZv
cmNlbWVudEVuYWJsZWQpCiAgICAgICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwotCi0gICAg
ICAgIE9wdGlvbmFsPFdlYkNvcmU6OkNOQU1FQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZD4gY25h
bWVDbG9ha2luZ01pdGlnYXRpb25FbmFibGVkOwotICAgICAgICBkZWNvZGVyID4+IGNuYW1lQ2xv
YWtpbmdNaXRpZ2F0aW9uRW5hYmxlZDsKLSAgICAgICAgaWYgKCFjbmFtZUNsb2FraW5nTWl0aWdh
dGlvbkVuYWJsZWQpCi0gICAgICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwogI2VuZGlmCiAK
ICAgICAgICAgT3B0aW9uYWw8V2ViQ29yZTo6Rmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1v
ZGU+IGZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlOwpAQCAtMTU3LDcgKzE1MCw2IEBA
IHN0cnVjdCBSZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycyB7CiAjaWYgRU5BQkxFKFJF
U09VUkNFX0xPQURfU1RBVElTVElDUykKICAgICAgICAgICAgIFdURk1vdmUoKnRoaXJkUGFydHlD
b29raWVCbG9ja2luZ01vZGUpLAogICAgICAgICAgICAgV1RGTW92ZSgqc2FtZVNpdGVTdHJpY3RF
bmZvcmNlbWVudEVuYWJsZWQpLAotICAgICAgICAgICAgV1RGTW92ZSgqY25hbWVDbG9ha2luZ01p
dGlnYXRpb25FbmFibGVkKSwKICNlbmRpZgogICAgICAgICAgICAgV1RGTW92ZSgqZmlyc3RQYXJ0
eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGUpLAogICAgICAgICAgICAgV1RGTW92ZSgqc3RhbmRhbG9u
ZUFwcGxpY2F0aW9uRG9tYWluKSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dl
YlByZWZlcmVuY2VzLnlhbWwgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcmVmZXJlbmNlcy55
YW1sCmluZGV4IDFjNmM5OGQzMTlkNjFkOWI4MmNlMmExNjI2ZTg0NTZlMGEyZWQ2Y2QuLmZmNmQ0
NDBiNzFjZjc4ZTdkYThiYTZkMGY4MTU0NDA4MmJkOGFhYjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvU2hhcmVkL1dlYlByZWZlcmVuY2VzLnlhbWwKKysrIGIvU291cmNlL1dlYktpdC9TaGFy
ZWQvV2ViUHJlZmVyZW5jZXMueWFtbApAQCAtMjA4MiwxMyArMjA4Miw2IEBAIElzU2FtZVNpdGVT
dHJpY3RFbmZvcmNlbWVudEVuYWJsZWQ6CiAgIGh1bWFuUmVhZGFibGVEZXNjcmlwdGlvbjogIkVu
YWJsZSBTYW1lU2l0ZSBzdHJpY3QgZW5mb3JjZW1lbnQgdG8gbWl0aWdhdGUgYm91bmNlIHRyYWNr
aW5nIgogICBjYXRlZ29yeTogZXhwZXJpbWVudGFsCiAKLUlzQ05BTUVDbG9ha2luZ01pdGlnYXRp
b25FbmFibGVkOgotICB0eXBlOiBib29sCi0gIGRlZmF1bHRWYWx1ZTogZmFsc2UKLSAgaHVtYW5S
ZWFkYWJsZU5hbWU6ICJFbmFibGUgQ05BTUUgY2xvYWtpbmcgbWl0aWdhdGlvbiIKLSAgaHVtYW5S
ZWFkYWJsZURlc2NyaXB0aW9uOiAiRW5hYmxlIHRoaXJkLXBhcnR5IENOQU1FIGNsb2FraW5nIG1p
dGlnYXRpb24iCi0gIGNhdGVnb3J5OiBleHBlcmltZW50YWwKLQogSXNMb2dnZWRJbkFQSUVuYWJs
ZWQ6CiAgICAgdHlwZTogYm9vbAogICAgIGRlZmF1bHRWYWx1ZTogZmFsc2UKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcCBiL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAppbmRleCAwNjg2NjYzYWZkMjI3ZTc3MWIy
MjQwMWYwZmNjNGQ0ZTlkOTI2ZDM2Li5hM2JjZDRkMjg4NTZhNWYwMzk4NmZmOTlhNGNjZjVlZjI3
MzlhOTE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9v
bC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCkBA
IC01OTcsNyArNTk3LDYgQEAgTmV0d29ya1Byb2Nlc3NQcm94eSYgV2ViUHJvY2Vzc1Bvb2w6OmVu
c3VyZU5ldHdvcmtQcm9jZXNzKFdlYnNpdGVEYXRhU3RvcmUqIHdpdGgKICNpZiBFTkFCTEUoUkVT
T1VSQ0VfTE9BRF9TVEFUSVNUSUNTKQogICAgIFdlYkNvcmU6OlRoaXJkUGFydHlDb29raWVCbG9j
a2luZ01vZGUgdGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZSA9IFdlYkNvcmU6OlRoaXJkUGFy
dHlDb29raWVCbG9ja2luZ01vZGU6OkFsbDsKICAgICBXZWJDb3JlOjpTYW1lU2l0ZVN0cmljdEVu
Zm9yY2VtZW50RW5hYmxlZCBzYW1lU2l0ZVN0cmljdEVuZm9yY2VtZW50RW5hYmxlZCA9IFdlYkNv
cmU6OlNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnRFbmFibGVkOjpObzsKLSAgICBXZWJDb3JlOjpD
TkFNRUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQgY25hbWVDbG9ha2luZ01pdGlnYXRpb25FbmFi
bGVkID0gV2ViQ29yZTo6Q05BTUVDbG9ha2luZ01pdGlnYXRpb25FbmFibGVkOjpObzsKICNlbmRp
ZgogICAgIFdlYkNvcmU6OkZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlIGZpcnN0UGFy
dHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlID0gV2ViQ29yZTo6Rmlyc3RQYXJ0eVdlYnNpdGVEYXRh
UmVtb3ZhbE1vZGU6OkFsbEJ1dENvb2tpZXM7CiAgICAgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21h
aW4gc3RhbmRhbG9uZUFwcGxpY2F0aW9uRG9tYWluOwpAQCAtNjMxLDcgKzYzMCw2IEBAIE5ldHdv
cmtQcm9jZXNzUHJveHkmIFdlYlByb2Nlc3NQb29sOjplbnN1cmVOZXR3b3JrUHJvY2VzcyhXZWJz
aXRlRGF0YVN0b3JlKiB3aXRoCiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElTVElDUykK
ICAgICAgICAgICAgIHRoaXJkUGFydHlDb29raWVCbG9ja2luZ01vZGUgPSBuZXR3b3JrU2Vzc2lv
blBhcmFtZXRlcnMucmVzb3VyY2VMb2FkU3RhdGlzdGljc1BhcmFtZXRlcnMudGhpcmRQYXJ0eUNv
b2tpZUJsb2NraW5nTW9kZTsKICAgICAgICAgICAgIHNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnRF
bmFibGVkID0gbmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLnJlc291cmNlTG9hZFN0YXRpc3RpY3NQ
YXJhbWV0ZXJzLnNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnRFbmFibGVkOwotICAgICAgICAgICAg
Y25hbWVDbG9ha2luZ01pdGlnYXRpb25FbmFibGVkID0gbmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJz
LnJlc291cmNlTG9hZFN0YXRpc3RpY3NQYXJhbWV0ZXJzLmNuYW1lQ2xvYWtpbmdNaXRpZ2F0aW9u
RW5hYmxlZDsKICNlbmRpZgogICAgICAgICAgICAgZmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3Zh
bE1vZGUgPSBuZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMucmVzb3VyY2VMb2FkU3RhdGlzdGljc1Bh
cmFtZXRlcnMuZmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGU7CiAgICAgICAgICAgICBz
dGFuZGFsb25lQXBwbGljYXRpb25Eb21haW4gPSBuZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMucmVz
b3VyY2VMb2FkU3RhdGlzdGljc1BhcmFtZXRlcnMuc3RhbmRhbG9uZUFwcGxpY2F0aW9uRG9tYWlu
OwpAQCAtNjY1LDcgKzY2Myw2IEBAIE5ldHdvcmtQcm9jZXNzUHJveHkmIFdlYlByb2Nlc3NQb29s
OjplbnN1cmVOZXR3b3JrUHJvY2VzcyhXZWJzaXRlRGF0YVN0b3JlKiB3aXRoCiAjaWYgRU5BQkxF
KFJFU09VUkNFX0xPQURfU1RBVElTVElDUykKICAgICAgICAgICAgIHRoaXJkUGFydHlDb29raWVC
bG9ja2luZ01vZGUgPSBuZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMucmVzb3VyY2VMb2FkU3RhdGlz
dGljc1BhcmFtZXRlcnMudGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZTsKICAgICAgICAgICAg
IHNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnRFbmFibGVkID0gbmV0d29ya1Nlc3Npb25QYXJhbWV0
ZXJzLnJlc291cmNlTG9hZFN0YXRpc3RpY3NQYXJhbWV0ZXJzLnNhbWVTaXRlU3RyaWN0RW5mb3Jj
ZW1lbnRFbmFibGVkOwotICAgICAgICAgICAgY25hbWVDbG9ha2luZ01pdGlnYXRpb25FbmFibGVk
ID0gbmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLnJlc291cmNlTG9hZFN0YXRpc3RpY3NQYXJhbWV0
ZXJzLmNuYW1lQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZDsKICNlbmRpZgogICAgICAgICAgICAg
Zmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGUgPSBuZXR3b3JrU2Vzc2lvblBhcmFtZXRl
cnMucmVzb3VyY2VMb2FkU3RhdGlzdGljc1BhcmFtZXRlcnMuZmlyc3RQYXJ0eVdlYnNpdGVEYXRh
UmVtb3ZhbE1vZGU7CiAgICAgICAgICAgICBzdGFuZGFsb25lQXBwbGljYXRpb25Eb21haW4gPSBu
ZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMucmVzb3VyY2VMb2FkU3RhdGlzdGljc1BhcmFtZXRlcnMu
c3RhbmRhbG9uZUFwcGxpY2F0aW9uRG9tYWluOwpAQCAtNzE1LDcgKzcxMiw2IEBAIE5ldHdvcmtQ
cm9jZXNzUHJveHkmIFdlYlByb2Nlc3NQb29sOjplbnN1cmVOZXR3b3JrUHJvY2VzcyhXZWJzaXRl
RGF0YVN0b3JlKiB3aXRoCiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElTVElDUykKICAg
ICAgICAgdGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZSwKICAgICAgICAgc2FtZVNpdGVTdHJp
Y3RFbmZvcmNlbWVudEVuYWJsZWQsCi0gICAgICAgIGNuYW1lQ2xvYWtpbmdNaXRpZ2F0aW9uRW5h
YmxlZCwKICNlbmRpZgogICAgICAgICBmaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZSwK
ICAgICAgICAgc3RhbmRhbG9uZUFwcGxpY2F0aW9uRG9tYWluLApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNvY29h
Lm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURh
dGFTdG9yZUNvY29hLm1tCmluZGV4IDI1N2ZiN2EyOTAxYWNlZmU0Y2RhZDMwYmUyNGEwYjYwMDkz
MTYzYzYuLmZiM2IyMWZkOTM2MjhhMzRhZTNkNGRlY2ZkNGU3OTdjZjY1MzFmNjUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRh
U3RvcmVDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9D
b2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0KQEAgLTk0LDcgKzk0LDYgQEAgdm9pZCBXZWJz
aXRlRGF0YVN0b3JlOjpwbGF0Zm9ybVNldE5ldHdvcmtQYXJhbWV0ZXJzKFdlYnNpdGVEYXRhU3Rv
cmVQYXJhbWV0ZXJzJgogICAgIGJvb2wgc2hvdWxkTG9nQ29va2llSW5mb3JtYXRpb24gPSBmYWxz
ZTsKICAgICBib29sIGVuYWJsZVJlc291cmNlTG9hZFN0YXRpc3RpY3NEZWJ1Z01vZGUgPSBmYWxz
ZTsKICAgICBhdXRvIHNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnRFbmFibGVkID0gV2ViQ29yZTo6
U2FtZVNpdGVTdHJpY3RFbmZvcmNlbWVudEVuYWJsZWQ6Ok5vOwotICAgIGF1dG8gY25hbWVDbG9h
a2luZ01pdGlnYXRpb25FbmFibGVkID0gV2ViQ29yZTo6Q05BTUVDbG9ha2luZ01pdGlnYXRpb25F
bmFibGVkOjpObzsKICAgICBhdXRvIGZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlID0g
V2ViQ29yZTo6Rmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGU6OkFsbEJ1dENvb2tpZXM7
CiAgICAgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4gcmVzb3VyY2VMb2FkU3RhdGlzdGljc01h
bnVhbFByZXZhbGVudFJlc291cmNlIHsgfTsKICNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9TVEFU
SVNUSUNTKQpAQCAtMTAzLDkgKzEwMiw2IEBAIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6cGxhdGZv
cm1TZXROZXR3b3JrUGFyYW1ldGVycyhXZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycyYKICAgICBp
ZiAoW2RlZmF1bHRzIGJvb2xGb3JLZXk6W05TU3RyaW5nIHN0cmluZ1dpdGhGb3JtYXQ6QCJFeHBl
cmltZW50YWwlQCIsIFdlYlByZWZlcmVuY2VzS2V5Ojppc1NhbWVTaXRlU3RyaWN0RW5mb3JjZW1l
bnRFbmFibGVkS2V5KCkuY3JlYXRlQ0ZTdHJpbmcoKS5nZXQoKV1dKQogICAgICAgICBzYW1lU2l0
ZVN0cmljdEVuZm9yY2VtZW50RW5hYmxlZCA9IFdlYkNvcmU6OlNhbWVTaXRlU3RyaWN0RW5mb3Jj
ZW1lbnRFbmFibGVkOjpZZXM7CiAKLSAgICBpZiAoW2RlZmF1bHRzIGJvb2xGb3JLZXk6W05TU3Ry
aW5nIHN0cmluZ1dpdGhGb3JtYXQ6QCJFeHBlcmltZW50YWwlQCIsIFdlYlByZWZlcmVuY2VzS2V5
Ojppc0NOQU1FQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZEtleSgpLmNyZWF0ZUNGU3RyaW5nKCku
Z2V0KCldXSkKLSAgICAgICAgY25hbWVDbG9ha2luZ01pdGlnYXRpb25FbmFibGVkID0gV2ViQ29y
ZTo6Q05BTUVDbG9ha2luZ01pdGlnYXRpb25FbmFibGVkOjpZZXM7Ci0KICAgICBpZiAoW2RlZmF1
bHRzIGJvb2xGb3JLZXk6W05TU3RyaW5nIHN0cmluZ1dpdGhGb3JtYXQ6QCJFeHBlcmltZW50YWwl
QCIsIFdlYlByZWZlcmVuY2VzS2V5Ojppc0ZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxEaXNh
YmxlZEtleSgpLmNyZWF0ZUNGU3RyaW5nKCkuZ2V0KCldXSkKICAgICAgICAgZmlyc3RQYXJ0eVdl
YnNpdGVEYXRhUmVtb3ZhbE1vZGUgPSBXZWJDb3JlOjpGaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1v
dmFsTW9kZTo6Tm9uZTsKICAgICBlbHNlIHsKQEAgLTE4Miw3ICsxNzgsNiBAQCB2b2lkIFdlYnNp
dGVEYXRhU3RvcmU6OnBsYXRmb3JtU2V0TmV0d29ya1BhcmFtZXRlcnMoV2Vic2l0ZURhdGFTdG9y
ZVBhcmFtZXRlcnMmCiAgICAgcGFyYW1ldGVycy5uZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMucmVz
b3VyY2VMb2FkU3RhdGlzdGljc1BhcmFtZXRlcnMuc2hvdWxkSW5jbHVkZUxvY2FsaG9zdCA9IHNo
b3VsZEluY2x1ZGVMb2NhbGhvc3RJblJlc291cmNlTG9hZFN0YXRpc3RpY3M7CiAgICAgcGFyYW1l
dGVycy5uZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMucmVzb3VyY2VMb2FkU3RhdGlzdGljc1BhcmFt
ZXRlcnMuZW5hYmxlRGVidWdNb2RlID0gZW5hYmxlUmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVn
TW9kZTsKICAgICBwYXJhbWV0ZXJzLm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5yZXNvdXJjZUxv
YWRTdGF0aXN0aWNzUGFyYW1ldGVycy5zYW1lU2l0ZVN0cmljdEVuZm9yY2VtZW50RW5hYmxlZCA9
IHNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnRFbmFibGVkOwotICAgIHBhcmFtZXRlcnMubmV0d29y
a1Nlc3Npb25QYXJhbWV0ZXJzLnJlc291cmNlTG9hZFN0YXRpc3RpY3NQYXJhbWV0ZXJzLmNuYW1l
Q2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZCA9IGNuYW1lQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxl
ZDsKICAgICBwYXJhbWV0ZXJzLm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5yZXNvdXJjZUxvYWRT
dGF0aXN0aWNzUGFyYW1ldGVycy5maXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZSA9IGZp
cnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlOwogICAgIHBhcmFtZXRlcnMubmV0d29ya1Nl
c3Npb25QYXJhbWV0ZXJzLnJlc291cmNlTG9hZFN0YXRpc3RpY3NQYXJhbWV0ZXJzLnN0YW5kYWxv
bmVBcHBsaWNhdGlvbkRvbWFpbiA9IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIHsgbV9jb25m
aWd1cmF0aW9uLT5zdGFuZGFsb25lQXBwbGljYXRpb25VUkwoKSB9OwogICAgIHBhcmFtZXRlcnMu
bmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLnJlc291cmNlTG9hZFN0YXRpc3RpY3NQYXJhbWV0ZXJz
Lm1hbnVhbFByZXZhbGVudFJlc291cmNlID0gV1RGTW92ZShyZXNvdXJjZUxvYWRTdGF0aXN0aWNz
TWFudWFsUHJldmFsZW50UmVzb3VyY2UpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmNwcAppbmRleCBlZDc0ZDgwNzlh
Y2UxYzhlNjg2OTI0ZTZiMDQ1NDBiMDI3MDkzNzE5Li5iOWZiODk1OTE0ODRhZDYxNjFlZGE4NTM2
OGM2MjZkOTBhZGJmZDhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJz
aXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmNwcApAQCAtMjMxOCw3ICsyMzE4LDYgQEAg
V2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMgV2Vic2l0ZURhdGFTdG9yZTo6cGFyYW1ldGVycygp
CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURfU1RBVElTVElDUykKICAgICAgICAgdGhpcmRQYXJ0
eUNvb2tpZUJsb2NraW5nTW9kZSgpLAogICAgICAgICBXZWJDb3JlOjpTYW1lU2l0ZVN0cmljdEVu
Zm9yY2VtZW50RW5hYmxlZDo6Tm8sCi0gICAgICAgIFdlYkNvcmU6OkNOQU1FQ2xvYWtpbmdNaXRp
Z2F0aW9uRW5hYmxlZDo6Tm8sCiAjZW5kaWYKICAgICAgICAgZmlyc3RQYXJ0eVdlYnNpdGVEYXRh
UmVtb3ZhbE1vZGUsCiAgICAgICAgIFdURk1vdmUoc3RhbmRhbG9uZUFwcGxpY2F0aW9uRG9tYWlu
KSwK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>407439</attachid>
            <date>2020-08-27 17:04:49 -0700</date>
            <delta_ts>2020-08-27 19:33:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215902-20200827170448.patch</filename>
            <type>text/plain</type>
            <size>27905</size>
            <attacher name="John Wilander">wilander</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2MjQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTU0NjIxYjNiYTRjYzE5
OTM0MDEyODM1YjJkYzFmYzY1ZmE2OTk2Mi4uNmY2OGE1Yzk0ODRjY2Y3YWJhZTlkYTlkMzQ5MDEw
NzdiYTM1Njc3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIwLTA4LTI3ICBKb2hu
IFdpbGFuZGVyICA8d2lsYW5kZXJAYXBwbGUuY29tPgorCisgICAgICAgIFJlbW92ZSB0aGUgZmVh
dHVyZSBmbGFnIGZvciBjYXBwZWQgY29va2llcyBzZXQgaW4gM3JkLXBhcnR5IENOQU1FIGNsb2Fr
ZWQgSFRUUCByZXNwb25zZXMgYW5kIGFkZCBJVFAgZGVidWcgbG9nZ2luZworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE1OTAyCisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS82NjY5OTczMT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBUaGlzIGNoYW5nZSByZW1vdmVzIHRoZSBmZWF0dXJlIGZsYWcsIGVmZmVj
dGl2ZWx5IHR1cm5pbmcgdGhlIGZlYXR1cmUgb24uCisgICAgICAgIEl0IGFsc28gYWRkcyBsb2cg
b3V0cHV0IG9mIGNvb2tpZSBuYW1lcyB0aGF0IGhhdmUgYmVlbiBjYXBwZWQgd2hlbiBJVFAKKyAg
ICAgICAgRGVidWcgTW9kZSBpcyBlbmFibGVkLgorCisgICAgICAgIFdlYkNvcmU6Ok5ldHdvcmtT
dG9yYWdlU2Vzc2lvbiBub3cgaGFzIGEgbWVtYmVyIGZsYWcgZm9yIElUUCBkZWJ1ZyBsb2dnaW5n
LgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gVGhpcyBmZWF0dXJlIGFscmVhZHkgaGFzIHRlc3Rz
LgorCisgICAgICAgICogcGFnZS9TZXR0aW5ncy55YW1sOgorICAgICAgICAqIHBsYXRmb3JtL25l
dHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdv
cmtTdG9yYWdlU2Vzc2lvbjo6c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTG9nZ2luZ0Vu
YWJsZWQpOgorICAgICAgICAoV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpyZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzRGVidWdMb2dnaW5nRW5hYmxlZCBjb25zdCk6CisgICAgICAgICAgICBO
ZXcgZnVuY3Rpb24gdG8gYmUgYWJsZSB0byBjb25kaXRpb25hbGl6ZSBsb2cgb3V0cHV0IGluIHRo
ZSBuZXcgZmVhdHVyZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdG9yYWdl
U2Vzc2lvbi5oOgorCiAyMDIwLTA4LTI3ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNv
bT4KIAogICAgICAgICA6aG9zdCgpIHBzZXVkby1zZWxlY3RvciByZXBvcnRlZCBhcyA6aG9zdCBp
biBDU1NTdHlsZVJ1bGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggNmY5ODQzNzA5YzFjNDdhNzcyOGJjZDRmYmQ4YjMw
ODQyMDhkMmFhZC4uYWU1Y2Y4ODYwYTZlMzM4NmRkNzUyOGI1MDFiYzZmMmExMTBhNGExZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKQEAgLTEsMyArMSw0MyBAQAorMjAyMC0wOC0yNyAgSm9obiBXaWxhbmRlciAgPHdpbGFu
ZGVyQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgdGhlIGZlYXR1cmUgZmxhZyBmb3IgY2Fw
cGVkIGNvb2tpZXMgc2V0IGluIDNyZC1wYXJ0eSBDTkFNRSBjbG9ha2VkIEhUVFAgcmVzcG9uc2Vz
IGFuZCBhZGQgSVRQIGRlYnVnIGxvZ2dpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxNTkwMgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjY2OTk3
MzE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhp
cyBjaGFuZ2UgcmVtb3ZlcyB0aGUgZmVhdHVyZSBmbGFnLCBlZmZlY3RpdmVseSB0dXJuaW5nIHRo
ZSBmZWF0dXJlIG9uLgorICAgICAgICBJdCBhbHNvIGFkZHMgbG9nIG91dHB1dCBvZiBjb29raWUg
bmFtZXMgdGhhdCBoYXZlIGJlZW4gY2FwcGVkIHdoZW4gSVRQCisgICAgICAgIERlYnVnIE1vZGUg
aXMgZW5hYmxlZC4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVz
b3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljc1N0b3JlOjpzZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2Rl
KToKKyAgICAgICAgICAgIE5vdyBzZXRzIHRoZSBmbGFnIGluIFdlYkNvcmU6Ok5ldHdvcmtTdG9y
YWdlU2Vzc2lvbiB0aHJvdWdoIHRoZSBuZXcgZnVuY3Rpb24KKyAgICAgICAgICAgIFdlYkNvcmU6
Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTG9n
Z2luZ0VuYWJsZWQoKS4KKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5j
cHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjpyZXNldFBhcmFtZXRlcnNUb0Rl
ZmF1bHRWYWx1ZXMpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6c2V0SXNSdW5u
aW5nUmVzb3VyY2VMb2FkU3RhdGlzdGljc1Rlc3QpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNz
L05ldHdvcmtTZXNzaW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Nlc3Npb246Ok5l
dHdvcmtTZXNzaW9uKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Nlc3Npb246OnNldEZpcnN0
UGFydHlIb3N0Q05BTUVEb21haW4pOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrU2Vzc2lvbjo6
Zmlyc3RQYXJ0eUhvc3RDTkFNRURvbWFpbik6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0
d29ya1Nlc3Npb24uaDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Nlc3Npb246OnNldENOQU1F
Q2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtTZXNzaW9uOjpjbmFtZUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQgY29uc3QpOiBEZWxl
dGVkLgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL2NvY29hL05ldHdvcmtEYXRhVGFza0NvY29h
Lm1tOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrRGF0YVRhc2tDb2NvYTo6dXBkYXRlRmlyc3RQ
YXJ0eUluZm9Gb3JTZXNzaW9uKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0RhdGFUYXNrQ29j
b2E6OmFwcGx5Q29va2llUG9saWN5Rm9yVGhpcmRQYXJ0eUNOQU1FQ2xvYWtpbmcpOgorICAgICAg
ICAqIFNoYXJlZC9SZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy5oOgorICAgICAgICAo
V2ViS2l0OjpSZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVyczo6ZW5jb2RlIGNvbnN0KToK
KyAgICAgICAgKFdlYktpdDo6UmVzb3VyY2VMb2FkU3RhdGlzdGljc1BhcmFtZXRlcnM6OmRlY29k
ZSk6CisgICAgICAgICogU2hhcmVkL1dlYlByZWZlcmVuY2VzLnlhbWw6CisgICAgICAgICogVUlQ
cm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Bv
b2w6OmVuc3VyZU5ldHdvcmtQcm9jZXNzKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vic2l0ZURh
dGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJz
aXRlRGF0YVN0b3JlOjpwbGF0Zm9ybVNldE5ldHdvcmtQYXJhbWV0ZXJzKToKKyAgICAgICAgKiBV
SVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYnNpdGVEYXRhU3RvcmU6OnBhcmFtZXRlcnMpOgorCiAyMDIwLTA4LTI3ICBKZXIgTm9i
bGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04ocjI2NDcxMCk6
IEluaXRpYWxpemluZyB0aGUgQVZQbGF5ZXIgT2JqLUMgY2xhc3MgYXQgcHJvY2VzcyBzdGFydCB1
cCBjYXVzZXMgYSByZWdyZXNzaW9uIGluIHBvd2VyLXVzZSB0ZXN0cwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy55YW1sIGIvU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0
aW5ncy55YW1sCmluZGV4IDFhNDUzNTgwOWMwYjc0MTk0ZjVjYzk4ZjZkZWRiZjM3NGY3MmVjMWEu
Ljk3ZTA2YjQyOWY2ZDA5MzNlOTZhMDE3ZjU3N2Q2ZDdlMDNmOGQzNzcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MueWFtbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1NldHRpbmdzLnlhbWwKQEAgLTkzMyw5ICs5MzMsNiBAQCBpc0ZpcnN0UGFydHlXZWJzaXRlRGF0
YVJlbW92YWxSZXByb1Rlc3RpbmdFbmFibGVkOgogaXNTYW1lU2l0ZVN0cmljdEVuZm9yY2VtZW50
RW5hYmxlZDoKICAgaW5pdGlhbDogZmFsc2UKIAotaXNDTkFNRUNsb2FraW5nTWl0aWdhdGlvbkVu
YWJsZWQ6Ci0gIGluaXRpYWw6IGZhbHNlCi0KIGlzTG9nZ2VkSW5BUElFbmFibGVkOgogICBpbml0
aWFsOiBmYWxzZQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5jcHAKaW5kZXggYzUzMzIxZTFjYmEzZGQ5NzRmOTcw
Yzc1OTEwNmE3ZjgxN2UyMGI3OC4uMjEzZjhkZjFkOTliMGEyM2RiODljMjU5ZDY3ZDk3NGY1NGUx
NTNmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3Jr
U3RvcmFnZVNlc3Npb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
TmV0d29ya1N0b3JhZ2VTZXNzaW9uLmNwcApAQCAtNzksNiArNzksMTYgQEAgYm9vbCBOZXR3b3Jr
U3RvcmFnZVNlc3Npb246OnJlc291cmNlTG9hZFN0YXRpc3RpY3NFbmFibGVkKCkgY29uc3QKIH0K
ICNlbmRpZgogCit2b2lkIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c2V0UmVzb3VyY2VMb2FkU3Rh
dGlzdGljc0RlYnVnTG9nZ2luZ0VuYWJsZWQoYm9vbCBlbmFibGVkKQoreworICAgIG1faXNSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzRGVidWdMb2dnaW5nRW5hYmxlZCA9IGVuYWJsZWQ7Cit9CisKK2Jv
b2wgTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpyZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdMb2dn
aW5nRW5hYmxlZCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1faXNSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzRGVidWdMb2dnaW5nRW5hYmxlZDsKK30KKwogYm9vbCBOZXR3b3JrU3RvcmFnZVNlc3Npb246
OnNob3VsZEJsb2NrVGhpcmRQYXJ0eUNvb2tpZXMoY29uc3QgUmVnaXN0cmFibGVEb21haW4mIHJl
Z2lzdHJhYmxlRG9tYWluKSBjb25zdAogewogICAgIGlmICghbV9pc1Jlc291cmNlTG9hZFN0YXRp
c3RpY3NFbmFibGVkIHx8IHJlZ2lzdHJhYmxlRG9tYWluLmlzRW1wdHkoKSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5o
CmluZGV4IDQzOWRhMWY3OWQwZDk2YjExNmRiNjdlNTZjNzNlOTgxZWZmY2MwNGYuLjI4YzQ3MDI5
OTc5NDZiODk4NjUzZTNlN2MzMDgwZjUwZWRhNDNmYWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaApAQCAtODUs
NyArODUsNiBAQCBlbnVtIGNsYXNzIEluY2x1ZGVTZWN1cmVDb29raWVzIDogYm9vbDsKIGVudW0g
Y2xhc3MgSW5jbHVkZUh0dHBPbmx5Q29va2llcyA6IGJvb2w7CiBlbnVtIGNsYXNzIFRoaXJkUGFy
dHlDb29raWVCbG9ja2luZ01vZGUgOiB1aW50OF90IHsgQWxsLCBBbGxFeGNlcHRCZXR3ZWVuQXBw
Qm91bmREb21haW5zLCBBbGxPblNpdGVzV2l0aG91dFVzZXJJbnRlcmFjdGlvbiwgT25seUFjY29y
ZGluZ1RvUGVyRG9tYWluUG9saWN5IH07CiBlbnVtIGNsYXNzIFNhbWVTaXRlU3RyaWN0RW5mb3Jj
ZW1lbnRFbmFibGVkIDogYm9vbCB7IFllcywgTm8gfTsKLWVudW0gY2xhc3MgQ05BTUVDbG9ha2lu
Z01pdGlnYXRpb25FbmFibGVkIDogYm9vbCB7IFllcywgTm8gfTsKIGVudW0gY2xhc3MgRmlyc3RQ
YXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGUgOiB1aW50OF90IHsgQWxsQnV0Q29va2llcywgTm9u
ZSwgQWxsQnV0Q29va2llc0xpdmVPblRlc3RpbmdUaW1lb3V0LCBBbGxCdXRDb29raWVzUmVwcm9U
ZXN0aW5nVGltZW91dCB9OwogZW51bSBjbGFzcyBTaG91bGRBc2tJVFAgOiBib29sIHsgTm8sIFll
cyB9OwogCkBAIC0xODYsNiArMTg1LDggQEAgcHVibGljOgogI2lmIEVOQUJMRShSRVNPVVJDRV9M
T0FEX1NUQVRJU1RJQ1MpCiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBzZXRSZXNvdXJjZUxvYWRT
dGF0aXN0aWNzRW5hYmxlZChib29sKTsKICAgICBXRUJDT1JFX0VYUE9SVCBib29sIHJlc291cmNl
TG9hZFN0YXRpc3RpY3NFbmFibGVkKCkgY29uc3Q7CisgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCBz
ZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdMb2dnaW5nRW5hYmxlZChib29sKTsKKyAgICBX
RUJDT1JFX0VYUE9SVCBib29sIHJlc291cmNlTG9hZFN0YXRpc3RpY3NEZWJ1Z0xvZ2dpbmdFbmFi
bGVkKCkgY29uc3Q7CiAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBzaG91bGRCbG9ja0Nvb2tpZXMo
Y29uc3QgUmVzb3VyY2VSZXF1ZXN0JiwgT3B0aW9uYWw8RnJhbWVJZGVudGlmaWVyPiwgT3B0aW9u
YWw8UGFnZUlkZW50aWZpZXI+LCBTaG91bGRSZWxheFRoaXJkUGFydHlDb29raWVCbG9ja2luZykg
Y29uc3Q7CiAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBzaG91bGRCbG9ja0Nvb2tpZXMoY29uc3Qg
VVJMJiBmaXJzdFBhcnR5Rm9yQ29va2llcywgY29uc3QgVVJMJiByZXNvdXJjZSwgT3B0aW9uYWw8
RnJhbWVJZGVudGlmaWVyPiwgT3B0aW9uYWw8UGFnZUlkZW50aWZpZXI+LCBTaG91bGRSZWxheFRo
aXJkUGFydHlDb29raWVCbG9ja2luZykgY29uc3Q7CiAgICAgV0VCQ09SRV9FWFBPUlQgYm9vbCBz
aG91bGRCbG9ja1RoaXJkUGFydHlDb29raWVzKGNvbnN0IFJlZ2lzdHJhYmxlRG9tYWluJikgY29u
c3Q7CkBAIC0yNTksNiArMjYwLDcgQEAgcHJpdmF0ZToKIAogI2lmIEVOQUJMRShSRVNPVVJDRV9M
T0FEX1NUQVRJU1RJQ1MpCiAgICAgYm9vbCBtX2lzUmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJs
ZWQgPSBmYWxzZTsKKyAgICBib29sIG1faXNSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdMb2dn
aW5nRW5hYmxlZCA9IGZhbHNlOwogICAgIE9wdGlvbmFsPFNlY29uZHM+IGNsaWVudFNpZGVDb29r
aWVDYXAoY29uc3QgVG9wRnJhbWVEb21haW4mLCBPcHRpb25hbDxQYWdlSWRlbnRpZmllcj4pIGNv
bnN0OwogICAgIGJvb2wgc2hvdWxkRXhlbXB0RG9tYWluUGFpckZyb21UaGlyZFBhcnR5Q29va2ll
QmxvY2tpbmcoY29uc3QgVG9wRnJhbWVEb21haW4mLCBjb25zdCBTdWJSZXNvdXJjZURvbWFpbiYp
IGNvbnN0OwogICAgIEhhc2hTZXQ8UmVnaXN0cmFibGVEb21haW4+IG1fcmVnaXN0cmFibGVEb21h
aW5zVG9CbG9ja0FuZERlbGV0ZUNvb2tpZXNGb3I7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL0NsYXNzaWZpZXIvV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3Jl
LmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwCmluZGV4IGUwMzgyNDg4YjY5NjQ3ZTk5MTBlMTY3YjJl
ZDRmNDE1MjE0OWJjMDYuLjRkZTlhYWM2Yzg0ZTZhNGRiMjk0YWUyMmI0NGVlMzY1ZmVhYjBjY2Ug
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJS
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3MvQ2xhc3NpZmllci9XZWJSZXNvdXJjZUxvYWRTdGF0aXN0aWNzU3RvcmUuY3BwCkBA
IC0zMDIsNiArMzAyLDExIEBAIHZvaWQgV2ViUmVzb3VyY2VMb2FkU3RhdGlzdGljc1N0b3JlOjpz
ZXRSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2RlKGJvb2wgdmFsCiAgICAgICAgIHJldHVy
bjsKICAgICB9CiAKKyAgICBpZiAobV9uZXR3b3JrU2Vzc2lvbikgeworICAgICAgICBpZiAoYXV0
byogc3RvcmFnZVNlc3Npb24gPSBtX25ldHdvcmtTZXNzaW9uLT5uZXR3b3JrU3RvcmFnZVNlc3Np
b24oKSkKKyAgICAgICAgICAgIHN0b3JhZ2VTZXNzaW9uLT5zZXRSZXNvdXJjZUxvYWRTdGF0aXN0
aWNzRGVidWdMb2dnaW5nRW5hYmxlZCh2YWx1ZSk7CisgICAgfQorCiAgICAgcG9zdFRhc2soW3Ro
aXMsIHZhbHVlLCBjb21wbGV0aW9uSGFuZGxlciA9IFdURk1vdmUoY29tcGxldGlvbkhhbmRsZXIp
XSgpIG11dGFibGUgewogICAgICAgICBpZiAobV9zdGF0aXN0aWNzU3RvcmUpCiAgICAgICAgICAg
ICBtX3N0YXRpc3RpY3NTdG9yZS0+c2V0UmVzb3VyY2VMb2FkU3RhdGlzdGljc0RlYnVnTW9kZSh2
YWx1ZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQ
cm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3Mu
Y3BwCmluZGV4IGUxYTA2NDYzYjc1NTc3YzNhYjY3MmE2MmE0N2ZhMmRlODg0MDAzNGQuLjMwMDUz
ZGE0ZDc3YTMxYTlmZmEyYjUyY2EzMWYzY2M3N2E5MjkxNDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwCkBAIC04MTUsNyArODE1LDYgQEAg
dm9pZCBOZXR3b3JrUHJvY2Vzczo6cmVzZXRQYXJhbWV0ZXJzVG9EZWZhdWx0VmFsdWVzKFBBTDo6
U2Vzc2lvbklEIHNlc3Npb25JRCwgQ28KIHsKICAgICBpZiAoYXV0byogbmV0d29ya1Nlc3Npb24g
PSB0aGlzLT5uZXR3b3JrU2Vzc2lvbihzZXNzaW9uSUQpKSB7CiAgICAgICAgIG5ldHdvcmtTZXNz
aW9uLT5yZXNldENOQU1FRG9tYWluRGF0YSgpOwotICAgICAgICBuZXR3b3JrU2Vzc2lvbi0+c2V0
Q05BTUVDbG9ha2luZ01pdGlnYXRpb25FbmFibGVkKFdlYkNvcmU6OkNOQU1FQ2xvYWtpbmdNaXRp
Z2F0aW9uRW5hYmxlZDo6Tm8pOwogICAgICAgICBpZiAoYXV0byogcmVzb3VyY2VMb2FkU3RhdGlz
dGljcyA9IG5ldHdvcmtTZXNzaW9uLT5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzKCkpCiAgICAgICAg
ICAgICByZXNvdXJjZUxvYWRTdGF0aXN0aWNzLT5yZXNldFBhcmFtZXRlcnNUb0RlZmF1bHRWYWx1
ZXMoV1RGTW92ZShjb21wbGV0aW9uSGFuZGxlcikpOwogICAgICAgICBlbHNlCkBAIC04NjgsNyAr
ODY3LDYgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6c2V0Tm90aWZ5UGFnZXNXaGVuRGF0YVJlY29y
ZHNXZXJlU2Nhbm5lZChQQUw6OlNlc3Npb25JRCBzZXMKIHZvaWQgTmV0d29ya1Byb2Nlc3M6OnNl
dElzUnVubmluZ1Jlc291cmNlTG9hZFN0YXRpc3RpY3NUZXN0KFBBTDo6U2Vzc2lvbklEIHNlc3Np
b25JRCwgYm9vbCB2YWx1ZSwgQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25I
YW5kbGVyKQogewogICAgIGlmIChhdXRvKiBuZXR3b3JrU2Vzc2lvbiA9IHRoaXMtPm5ldHdvcmtT
ZXNzaW9uKHNlc3Npb25JRCkpIHsKLSAgICAgICAgbmV0d29ya1Nlc3Npb24tPnNldENOQU1FQ2xv
YWtpbmdNaXRpZ2F0aW9uRW5hYmxlZChXZWJDb3JlOjpDTkFNRUNsb2FraW5nTWl0aWdhdGlvbkVu
YWJsZWQ6Olllcyk7CiAgICAgICAgIGlmIChhdXRvKiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzID0g
bmV0d29ya1Nlc3Npb24tPnJlc291cmNlTG9hZFN0YXRpc3RpY3MoKSkKICAgICAgICAgICAgIHJl
c291cmNlTG9hZFN0YXRpc3RpY3MtPnNldElzUnVubmluZ1Rlc3QodmFsdWUsIFdURk1vdmUoY29t
cGxldGlvbkhhbmRsZXIpKTsKICAgICAgICAgZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrU2Vzc2lvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL05ldHdvcmtTZXNzaW9uLmNwcAppbmRleCBhN2NiMTc0NDljNGY0NzIzOGIxNWNk
YTk2NjQxM2MwZmI4NjFmZGU3Li5iYzI4YWM4ZjRjNzA0ZmE2Yjc3MTQxNTg3Nzg4OGMyODUwYzRk
OGZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtTZXNz
aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtTZXNzaW9u
LmNwcApAQCAtOTAsNyArOTAsNiBAQCBOZXR3b3JrU2Vzc2lvbjo6TmV0d29ya1Nlc3Npb24oTmV0
d29ya1Byb2Nlc3MmIG5ldHdvcmtQcm9jZXNzLCBjb25zdCBOZXR3b3JrU2VzcwogICAgICwgbV9z
YW1lU2l0ZVN0cmljdEVuZm9yY2VtZW50RW5hYmxlZChwYXJhbWV0ZXJzLnJlc291cmNlTG9hZFN0
YXRpc3RpY3NQYXJhbWV0ZXJzLnNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnRFbmFibGVkKQogICAg
ICwgbV9maXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZShwYXJhbWV0ZXJzLnJlc291cmNl
TG9hZFN0YXRpc3RpY3NQYXJhbWV0ZXJzLmZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2Rl
KQogICAgICwgbV9zdGFuZGFsb25lQXBwbGljYXRpb25Eb21haW4ocGFyYW1ldGVycy5yZXNvdXJj
ZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy5zdGFuZGFsb25lQXBwbGljYXRpb25Eb21haW4pCi0g
ICAgLCBtX2NuYW1lQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZChwYXJhbWV0ZXJzLnJlc291cmNl
TG9hZFN0YXRpc3RpY3NQYXJhbWV0ZXJzLmNuYW1lQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZCkK
ICNlbmRpZgogICAgICwgbV9hZENsaWNrQXR0cmlidXRpb24obWFrZVVuaXF1ZVJlZjxBZENsaWNr
QXR0cmlidXRpb25NYW5hZ2VyPihuZXR3b3JrUHJvY2VzcywgcGFyYW1ldGVycy5zZXNzaW9uSUQp
KQogICAgICwgbV90ZXN0U3BlZWRNdWx0aXBsaWVyKHBhcmFtZXRlcnMudGVzdFNwZWVkTXVsdGlw
bGllcikKQEAgLTI4NSw5ICsyODQsNiBAQCB2b2lkIE5ldHdvcmtTZXNzaW9uOjpzZXRTaG91bGRF
bmJsZVNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnQoV2ViQ29yZTo6U2FtZVNpdGVTdAogdm9pZCBO
ZXR3b3JrU2Vzc2lvbjo6c2V0Rmlyc3RQYXJ0eUhvc3RDTkFNRURvbWFpbihTdHJpbmcmJiBmaXJz
dFBhcnR5SG9zdCwgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4mJiBjbmFtZURvbWFpbikKIHsK
ICNpZiBIQVZFKENGTkVUV09SS19DTkFNRV9BTkRfQ09PS0lFX1RSQU5TRk9STV9TUEkpCi0gICAg
aWYgKCFjbmFtZUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQoKSkKLSAgICAgICAgcmV0dXJuOwot
CiAgICAgQVNTRVJUKCFmaXJzdFBhcnR5SG9zdC5pc0VtcHR5KCkgJiYgIWNuYW1lRG9tYWluLmlz
RW1wdHkoKSAmJiBmaXJzdFBhcnR5SG9zdCAhPSBjbmFtZURvbWFpbi5zdHJpbmcoKSk7CiAgICAg
aWYgKGZpcnN0UGFydHlIb3N0LmlzRW1wdHkoKSB8fCBjbmFtZURvbWFpbi5pc0VtcHR5KCkgfHwg
Zmlyc3RQYXJ0eUhvc3QgPT0gY25hbWVEb21haW4uc3RyaW5nKCkpCiAgICAgICAgIHJldHVybjsK
QEAgLTMwMSw5ICsyOTcsNiBAQCB2b2lkIE5ldHdvcmtTZXNzaW9uOjpzZXRGaXJzdFBhcnR5SG9z
dENOQU1FRG9tYWluKFN0cmluZyYmIGZpcnN0UGFydHlIb3N0LCBXZWJDbwogT3B0aW9uYWw8V2Vi
Q29yZTo6UmVnaXN0cmFibGVEb21haW4+IE5ldHdvcmtTZXNzaW9uOjpmaXJzdFBhcnR5SG9zdENO
QU1FRG9tYWluKGNvbnN0IFN0cmluZyYgZmlyc3RQYXJ0eUhvc3QpCiB7CiAjaWYgSEFWRShDRk5F
VFdPUktfQ05BTUVfQU5EX0NPT0tJRV9UUkFOU0ZPUk1fU1BJKQotICAgIGlmICghY25hbWVDbG9h
a2luZ01pdGlnYXRpb25FbmFibGVkKCkpCi0gICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7Ci0K
ICAgICBhdXRvIGl0ZXJhdG9yID0gbV9maXJzdFBhcnR5SG9zdENOQU1FRG9tYWlucy5maW5kKGZp
cnN0UGFydHlIb3N0KTsKICAgICBpZiAoaXRlcmF0b3IgPT0gbV9maXJzdFBhcnR5SG9zdENOQU1F
RG9tYWlucy5lbmQoKSkKICAgICAgICAgcmV0dXJuIFdURjo6bnVsbG9wdDsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb24uaCBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Nlc3Npb24uaAppbmRleCA1ZDNlZjBlZjZlYjEx
ZjUwMWNiZmM4NGIzODdhNzlhNDgzNmM5OWFjLi4xYTA4NzNjZWNhZTU2YjJmMmYxNjc1NmNjMzU4
OGNjMzZkNGMzMzhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtTZXNzaW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
U2Vzc2lvbi5oCkBAIC0xMDUsOCArMTA1LDYgQEAgcHVibGljOgogICAgIGJvb2wgc2hvdWxkRG93
bmdyYWRlUmVmZXJyZXIoKSBjb25zdDsKICAgICB2b2lkIHNldFRoaXJkUGFydHlDb29raWVCbG9j
a2luZ01vZGUoV2ViQ29yZTo6VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZSk7CiAgICAgdm9p
ZCBzZXRTaG91bGRFbmJsZVNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnQoV2ViQ29yZTo6U2FtZVNp
dGVTdHJpY3RFbmZvcmNlbWVudEVuYWJsZWQpOwotICAgIHZvaWQgc2V0Q05BTUVDbG9ha2luZ01p
dGlnYXRpb25FbmFibGVkKFdlYkNvcmU6OkNOQU1FQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZCB2
YWx1ZSkgeyBtX2NuYW1lQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZCA9IHZhbHVlOyB9Ci0gICAg
Ym9vbCBjbmFtZUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2Nu
YW1lQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZCA9PSBXZWJDb3JlOjpDTkFNRUNsb2FraW5nTWl0
aWdhdGlvbkVuYWJsZWQ6OlllczsgfQogICAgIHZvaWQgc2V0Rmlyc3RQYXJ0eUhvc3RDTkFNRURv
bWFpbihTdHJpbmcmJiBmaXJzdFBhcnR5SG9zdCwgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4m
JiBjbmFtZURvbWFpbik7CiAgICAgT3B0aW9uYWw8V2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4+
IGZpcnN0UGFydHlIb3N0Q05BTUVEb21haW4oY29uc3QgU3RyaW5nJiBmaXJzdFBhcnR5SG9zdCk7
CiAgICAgdm9pZCBzZXRUaGlyZFBhcnR5Q05BTUVEb21haW5Gb3JUZXN0aW5nKFdlYkNvcmU6OlJl
Z2lzdHJhYmxlRG9tYWluJiYgZG9tYWluKSB7IG1fdGhpcmRQYXJ0eUNOQU1FRG9tYWluRm9yVGVz
dGluZyA9IFdURk1vdmUoZG9tYWluKTsgfTsKQEAgLTE3Myw3ICsxNzEsNiBAQCBwcm90ZWN0ZWQ6
CiAgICAgV2ViQ29yZTo6U2FtZVNpdGVTdHJpY3RFbmZvcmNlbWVudEVuYWJsZWQgbV9zYW1lU2l0
ZVN0cmljdEVuZm9yY2VtZW50RW5hYmxlZCB7IFdlYkNvcmU6OlNhbWVTaXRlU3RyaWN0RW5mb3Jj
ZW1lbnRFbmFibGVkOjpObyB9OwogICAgIFdlYkNvcmU6OkZpcnN0UGFydHlXZWJzaXRlRGF0YVJl
bW92YWxNb2RlIG1fZmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGUgeyBXZWJDb3JlOjpG
aXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZTo6QWxsQnV0Q29va2llcyB9OwogICAgIFdl
YkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIG1fc3RhbmRhbG9uZUFwcGxpY2F0aW9uRG9tYWluOwot
ICAgIFdlYkNvcmU6OkNOQU1FQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZCBtX2NuYW1lQ2xvYWtp
bmdNaXRpZ2F0aW9uRW5hYmxlZCB7IFdlYkNvcmU6OkNOQU1FQ2xvYWtpbmdNaXRpZ2F0aW9uRW5h
YmxlZDo6Tm8gfTsKICAgICBIYXNoTWFwPFN0cmluZywgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21h
aW4+IG1fZmlyc3RQYXJ0eUhvc3RDTkFNRURvbWFpbnM7CiAgICAgT3B0aW9uYWw8V2ViQ29yZTo6
UmVnaXN0cmFibGVEb21haW4+IG1fdGhpcmRQYXJ0eUNOQU1FRG9tYWluRm9yVGVzdGluZzsKICNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3
b3JrRGF0YVRhc2tDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY29jb2Ev
TmV0d29ya0RhdGFUYXNrQ29jb2EubW0KaW5kZXggODRlNWQ0MGNhMjQzYWQ5MDZmNjM2NjE2Njg0
MGVjZGRjNTk4ODgzZC4uM2U4MTdmZWY4NTNhZTAxZjhmMWU4ZjM0ZTIzN2U1MTQ1NTkwNzM0NCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jb2NvYS9OZXR3b3JrRGF0
YVRhc2tDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2NvY29hL05l
dHdvcmtEYXRhVGFza0NvY29hLm1tCkBAIC0xNTMsNyArMTUzLDcgQEAgc3RhdGljIFdlYkNvcmU6
OlJlZ2lzdHJhYmxlRG9tYWluIGxhc3RDTkFNRURvbWFpbihOU0FycmF5PE5TU3RyaW5nICo+ICpj
bmFtZXMpCiAKIHZvaWQgTmV0d29ya0RhdGFUYXNrQ29jb2E6OnVwZGF0ZUZpcnN0UGFydHlJbmZv
Rm9yU2Vzc2lvbihjb25zdCBVUkwmIHJlcXVlc3RVUkwpCiB7Ci0gICAgaWYgKCFoYXNDTkFNRUFu
ZENvb2tpZVRyYW5zZm9ybVNQSShtX3Rhc2suZ2V0KCkpIHx8ICFuZXR3b3JrU2Vzc2lvbigpIHx8
ICFuZXR3b3JrU2Vzc2lvbigpLT5uZXR3b3JrU3RvcmFnZVNlc3Npb24oKSB8fCAhbmV0d29ya1Nl
c3Npb24oKS0+bmV0d29ya1N0b3JhZ2VTZXNzaW9uKCktPnJlc291cmNlTG9hZFN0YXRpc3RpY3NF
bmFibGVkKCkgfHwgIW5ldHdvcmtTZXNzaW9uKCktPmNuYW1lQ2xvYWtpbmdNaXRpZ2F0aW9uRW5h
YmxlZCgpIHx8IHJlcXVlc3RVUkwuaG9zdCgpLmlzRW1wdHkoKSkKKyAgICBpZiAoIWhhc0NOQU1F
QW5kQ29va2llVHJhbnNmb3JtU1BJKG1fdGFzay5nZXQoKSkgfHwgIW5ldHdvcmtTZXNzaW9uKCkg
fHwgIW5ldHdvcmtTZXNzaW9uKCktPm5ldHdvcmtTdG9yYWdlU2Vzc2lvbigpIHx8ICFuZXR3b3Jr
U2Vzc2lvbigpLT5uZXR3b3JrU3RvcmFnZVNlc3Npb24oKS0+cmVzb3VyY2VMb2FkU3RhdGlzdGlj
c0VuYWJsZWQoKSB8fCByZXF1ZXN0VVJMLmhvc3QoKS5pc0VtcHR5KCkpCiAgICAgICAgIHJldHVy
bjsKIAogICAgIGF1dG8gY25hbWVEb21haW4gPSBsYXN0Q05BTUVEb21haW4oW21fdGFzayBfcmVz
b2x2ZWRDTkFNRUNoYWluXSk7CkBAIC0xNjMsNyArMTYzLDcgQEAgdm9pZCBOZXR3b3JrRGF0YVRh
c2tDb2NvYTo6dXBkYXRlRmlyc3RQYXJ0eUluZm9Gb3JTZXNzaW9uKGNvbnN0IFVSTCYgcmVxdWVz
dFVSTCkKIAogdm9pZCBOZXR3b3JrRGF0YVRhc2tDb2NvYTo6YXBwbHlDb29raWVQb2xpY3lGb3JU
aGlyZFBhcnR5Q05BTUVDbG9ha2luZyhjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmIHJl
cXVlc3QpCiB7Ci0gICAgaWYgKCFoYXNDTkFNRUFuZENvb2tpZVRyYW5zZm9ybVNQSShtX3Rhc2su
Z2V0KCkpIHx8IGlzVG9wTGV2ZWxOYXZpZ2F0aW9uKCkgfHwgIW5ldHdvcmtTZXNzaW9uKCkgfHwg
IW5ldHdvcmtTZXNzaW9uKCktPm5ldHdvcmtTdG9yYWdlU2Vzc2lvbigpIHx8ICFuZXR3b3JrU2Vz
c2lvbigpLT5uZXR3b3JrU3RvcmFnZVNlc3Npb24oKS0+cmVzb3VyY2VMb2FkU3RhdGlzdGljc0Vu
YWJsZWQoKSB8fCAhbmV0d29ya1Nlc3Npb24oKS0+Y25hbWVDbG9ha2luZ01pdGlnYXRpb25FbmFi
bGVkKCkpCisgICAgaWYgKCFoYXNDTkFNRUFuZENvb2tpZVRyYW5zZm9ybVNQSShtX3Rhc2suZ2V0
KCkpIHx8IGlzVG9wTGV2ZWxOYXZpZ2F0aW9uKCkgfHwgIW5ldHdvcmtTZXNzaW9uKCkgfHwgIW5l
dHdvcmtTZXNzaW9uKCktPm5ldHdvcmtTdG9yYWdlU2Vzc2lvbigpIHx8ICFuZXR3b3JrU2Vzc2lv
bigpLT5uZXR3b3JrU3RvcmFnZVNlc3Npb24oKS0+cmVzb3VyY2VMb2FkU3RhdGlzdGljc0VuYWJs
ZWQoKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKGlzVGhpcmRQYXJ0eVJlcXVlc3QocmVx
dWVzdCkpIHsKQEAgLTE3Nyw3ICsxNzcsNyBAQCB2b2lkIE5ldHdvcmtEYXRhVGFza0NvY29hOjph
cHBseUNvb2tpZVBvbGljeUZvclRoaXJkUGFydHlDTkFNRUNsb2FraW5nKGNvbnN0IFdlYgogICAg
IGF1dG8gZmlyc3RQYXJ0eVVSTCA9IHJlcXVlc3QuZmlyc3RQYXJ0eUZvckNvb2tpZXMoKTsKICAg
ICBhdXRvIGZpcnN0UGFydHlIb3N0Q05BTUUgPSBuZXR3b3JrU2Vzc2lvbigpLT5maXJzdFBhcnR5
SG9zdENOQU1FRG9tYWluKGZpcnN0UGFydHlVUkwuaG9zdCgpLnRvU3RyaW5nKCkpOwogCi0gICAg
bV90YXNrLmdldCgpLl9jb29raWVUcmFuc2Zvcm1DYWxsYmFjayA9IG1ha2VCbG9ja1B0cihbcmVx
dWVzdFVSTCA9IGNyb3NzVGhyZWFkQ29weShyZXF1ZXN0LnVybCgpKSwgZmlyc3RQYXJ0eVVSTCA9
IGNyb3NzVGhyZWFkQ29weShmaXJzdFBhcnR5VVJMKSwgZmlyc3RQYXJ0eUhvc3RDTkFNRSA9IGNy
b3NzVGhyZWFkQ29weShmaXJzdFBhcnR5SG9zdENOQU1FKSwgdGhpcmRQYXJ0eUNOQU1FRG9tYWlu
Rm9yVGVzdGluZyA9IGNyb3NzVGhyZWFkQ29weShuZXR3b3JrU2Vzc2lvbigpLT50aGlyZFBhcnR5
Q05BTUVEb21haW5Gb3JUZXN0aW5nKCkpLCBhZ2VDYXBGb3JDTkFNRUNsb2FrZWRDb29raWVzID0g
Y3Jvc3NUaHJlYWRDb3B5KG1fYWdlQ2FwRm9yQ05BTUVDbG9ha2VkQ29va2llcyksIHRhc2sgPSBt
X3Rhc2tdIChOU0FycmF5PE5TSFRUUENvb2tpZSo+ICpjb29raWVzU2V0SW5SZXNwb25zZSkgLT4g
TlNBcnJheTxOU0hUVFBDb29raWUqPiAqIHsKKyAgICBtX3Rhc2suZ2V0KCkuX2Nvb2tpZVRyYW5z
Zm9ybUNhbGxiYWNrID0gbWFrZUJsb2NrUHRyKFtyZXF1ZXN0VVJMID0gY3Jvc3NUaHJlYWRDb3B5
KHJlcXVlc3QudXJsKCkpLCBmaXJzdFBhcnR5VVJMID0gY3Jvc3NUaHJlYWRDb3B5KGZpcnN0UGFy
dHlVUkwpLCBmaXJzdFBhcnR5SG9zdENOQU1FID0gY3Jvc3NUaHJlYWRDb3B5KGZpcnN0UGFydHlI
b3N0Q05BTUUpLCB0aGlyZFBhcnR5Q05BTUVEb21haW5Gb3JUZXN0aW5nID0gY3Jvc3NUaHJlYWRD
b3B5KG5ldHdvcmtTZXNzaW9uKCktPnRoaXJkUGFydHlDTkFNRURvbWFpbkZvclRlc3RpbmcoKSks
IGFnZUNhcEZvckNOQU1FQ2xvYWtlZENvb2tpZXMgPSBjcm9zc1RocmVhZENvcHkobV9hZ2VDYXBG
b3JDTkFNRUNsb2FrZWRDb29raWVzKSwgdGFzayA9IG1fdGFzaywgZGVidWdMb2dnaW5nRW5hYmxl
ZCA9IG5ldHdvcmtTZXNzaW9uKCktPm5ldHdvcmtTdG9yYWdlU2Vzc2lvbigpLT5yZXNvdXJjZUxv
YWRTdGF0aXN0aWNzRGVidWdMb2dnaW5nRW5hYmxlZCgpXSAoTlNBcnJheTxOU0hUVFBDb29raWUq
PiAqY29va2llc1NldEluUmVzcG9uc2UpIC0+IE5TQXJyYXk8TlNIVFRQQ29va2llKj4gKiB7CiAg
ICAgICAgIGlmICghW2Nvb2tpZXNTZXRJblJlc3BvbnNlIGNvdW50XSkKICAgICAgICAgICAgIHJl
dHVybiBjb29raWVzU2V0SW5SZXNwb25zZTsKIApAQCAtMjAyLDYgKzIwMiw4IEBAIHZvaWQgTmV0
d29ya0RhdGFUYXNrQ29jb2E6OmFwcGx5Q29va2llUG9saWN5Rm9yVGhpcmRQYXJ0eUNOQU1FQ2xv
YWtpbmcoY29uc3QgV2ViCiAgICAgICAgICAgICAgICAgTlNIVFRQQ29va2llICpjb29raWUgPSAo
TlNIVFRQQ29va2llICopW2Nvb2tpZXNTZXRJblJlc3BvbnNlIG9iamVjdEF0SW5kZXg6aV07CiAg
ICAgICAgICAgICAgICAgY29va2llID0gV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpj
YXBFeHBpcnlPZlBlcnNpc3RlbnRDb29raWUoY29va2llLCBhZ2VDYXBGb3JDTkFNRUNsb2FrZWRD
b29raWVzKTsKICAgICAgICAgICAgICAgICBbY2FwcGVkQ29va2llcyBhZGRPYmplY3Q6Y29va2ll
XTsKKyAgICAgICAgICAgICAgICBpZiAoZGVidWdMb2dnaW5nRW5hYmxlZCkKKyAgICAgICAgICAg
ICAgICAgICAgUkVMRUFTRV9MT0dfSU5GTyhJVFBEZWJ1ZywgIkNhcHBlZCB0aGUgZXhwaXJ5IG9m
IHRoaXJkLXBhcnR5IENOQU1FIGNsb2FrZWQgY29va2llIG5hbWVkICVzLiIsIFtbY29va2llIG5h
bWVdIFVURjhTdHJpbmddKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIHJldHVybiBjYXBw
ZWRDb29raWVzOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9S
ZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQv
UmVzb3VyY2VMb2FkU3RhdGlzdGljc1BhcmFtZXRlcnMuaAppbmRleCBhY2IzNGVhYjExNjU3YzAz
M2M1MmFlM2FlYjAxODU4MjVlMGQ3NzhjLi42MGRlMzVmNmFlOTU3ZDcwNjc1OTQ5NjQ3M2NlMzUx
NjQyNDFlMmViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9SZXNvdXJjZUxvYWRT
dGF0aXN0aWNzUGFyYW1ldGVycy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1Jlc291cmNl
TG9hZFN0YXRpc3RpY3NQYXJhbWV0ZXJzLmgKQEAgLTQ1LDcgKzQ1LDYgQEAgc3RydWN0IFJlc291
cmNlTG9hZFN0YXRpc3RpY3NQYXJhbWV0ZXJzIHsKICNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9T
VEFUSVNUSUNTKQogICAgIFdlYkNvcmU6OlRoaXJkUGFydHlDb29raWVCbG9ja2luZ01vZGUgdGhp
cmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZSB7IFdlYkNvcmU6OlRoaXJkUGFydHlDb29raWVCbG9j
a2luZ01vZGU6OkFsbCB9OwogICAgIFdlYkNvcmU6OlNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnRF
bmFibGVkIHNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnRFbmFibGVkIHsgV2ViQ29yZTo6U2FtZVNp
dGVTdHJpY3RFbmZvcmNlbWVudEVuYWJsZWQ6Ok5vIH07Ci0gICAgV2ViQ29yZTo6Q05BTUVDbG9h
a2luZ01pdGlnYXRpb25FbmFibGVkIGNuYW1lQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZCB7IFdl
YkNvcmU6OkNOQU1FQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZDo6Tm8gfTsKICNlbmRpZgogICAg
IFdlYkNvcmU6OkZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlIGZpcnN0UGFydHlXZWJz
aXRlRGF0YVJlbW92YWxNb2RlIHsgV2ViQ29yZTo6Rmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3Zh
bE1vZGU6OkFsbEJ1dENvb2tpZXMgfTsKICAgICBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiBz
dGFuZGFsb25lQXBwbGljYXRpb25Eb21haW47CkBAIC02NCw3ICs2Myw2IEBAIHN0cnVjdCBSZXNv
dXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycyB7CiAjaWYgRU5BQkxFKFJFU09VUkNFX0xPQURf
U1RBVElTVElDUykKICAgICAgICAgZW5jb2RlciA8PCB0aGlyZFBhcnR5Q29va2llQmxvY2tpbmdN
b2RlOwogICAgICAgICBlbmNvZGVyIDw8IHNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnRFbmFibGVk
OwotICAgICAgICBlbmNvZGVyIDw8IGNuYW1lQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZDsKICNl
bmRpZgogICAgICAgICBlbmNvZGVyIDw8IGZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2Rl
OwogICAgICAgICBlbmNvZGVyIDw8IHN0YW5kYWxvbmVBcHBsaWNhdGlvbkRvbWFpbjsKQEAgLTEx
OSwxMSArMTE3LDYgQEAgc3RydWN0IFJlc291cmNlTG9hZFN0YXRpc3RpY3NQYXJhbWV0ZXJzIHsK
ICAgICAgICAgZGVjb2RlciA+PiBzYW1lU2l0ZVN0cmljdEVuZm9yY2VtZW50RW5hYmxlZDsKICAg
ICAgICAgaWYgKCFzYW1lU2l0ZVN0cmljdEVuZm9yY2VtZW50RW5hYmxlZCkKICAgICAgICAgICAg
IHJldHVybiBXVEY6Om51bGxvcHQ7Ci0KLSAgICAgICAgT3B0aW9uYWw8V2ViQ29yZTo6Q05BTUVD
bG9ha2luZ01pdGlnYXRpb25FbmFibGVkPiBjbmFtZUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQ7
Ci0gICAgICAgIGRlY29kZXIgPj4gY25hbWVDbG9ha2luZ01pdGlnYXRpb25FbmFibGVkOwotICAg
ICAgICBpZiAoIWNuYW1lQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxlZCkKLSAgICAgICAgICAgIHJl
dHVybiBXVEY6Om51bGxvcHQ7CiAjZW5kaWYKIAogICAgICAgICBPcHRpb25hbDxXZWJDb3JlOjpG
aXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZT4gZmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVt
b3ZhbE1vZGU7CkBAIC0xNTcsNyArMTUwLDYgQEAgc3RydWN0IFJlc291cmNlTG9hZFN0YXRpc3Rp
Y3NQYXJhbWV0ZXJzIHsKICNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNUSUNTKQogICAg
ICAgICAgICAgV1RGTW92ZSgqdGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZSksCiAgICAgICAg
ICAgICBXVEZNb3ZlKCpzYW1lU2l0ZVN0cmljdEVuZm9yY2VtZW50RW5hYmxlZCksCi0gICAgICAg
ICAgICBXVEZNb3ZlKCpjbmFtZUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQpLAogI2VuZGlmCiAg
ICAgICAgICAgICBXVEZNb3ZlKCpmaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZSksCiAg
ICAgICAgICAgICBXVEZNb3ZlKCpzdGFuZGFsb25lQXBwbGljYXRpb25Eb21haW4pLApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJlZmVyZW5jZXMueWFtbCBiL1NvdXJjZS9X
ZWJLaXQvU2hhcmVkL1dlYlByZWZlcmVuY2VzLnlhbWwKaW5kZXggMWM2Yzk4ZDMxOWQ2MWQ5Yjgy
Y2UyYTE2MjZlODQ1NmUwYTJlZDZjZC4uZmY2ZDQ0MGI3MWNmNzhlN2RhOGJhNmQwZjgxNTQ0MDgy
YmQ4YWFiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUHJlZmVyZW5jZXMu
eWFtbAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQcmVmZXJlbmNlcy55YW1sCkBAIC0y
MDgyLDEzICsyMDgyLDYgQEAgSXNTYW1lU2l0ZVN0cmljdEVuZm9yY2VtZW50RW5hYmxlZDoKICAg
aHVtYW5SZWFkYWJsZURlc2NyaXB0aW9uOiAiRW5hYmxlIFNhbWVTaXRlIHN0cmljdCBlbmZvcmNl
bWVudCB0byBtaXRpZ2F0ZSBib3VuY2UgdHJhY2tpbmciCiAgIGNhdGVnb3J5OiBleHBlcmltZW50
YWwKIAotSXNDTkFNRUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQ6Ci0gIHR5cGU6IGJvb2wKLSAg
ZGVmYXVsdFZhbHVlOiBmYWxzZQotICBodW1hblJlYWRhYmxlTmFtZTogIkVuYWJsZSBDTkFNRSBj
bG9ha2luZyBtaXRpZ2F0aW9uIgotICBodW1hblJlYWRhYmxlRGVzY3JpcHRpb246ICJFbmFibGUg
dGhpcmQtcGFydHkgQ05BTUUgY2xvYWtpbmcgbWl0aWdhdGlvbiIKLSAgY2F0ZWdvcnk6IGV4cGVy
aW1lbnRhbAotCiBJc0xvZ2dlZEluQVBJRW5hYmxlZDoKICAgICB0eXBlOiBib29sCiAgICAgZGVm
YXVsdFZhbHVlOiBmYWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Bvb2wuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wu
Y3BwCmluZGV4IDA2ODY2NjNhZmQyMjdlNzcxYjIyNDAxZjBmY2M0ZDRlOWQ5MjZkMzYuLmEzYmNk
NGQyODg1NmE1ZjAzOTg2ZmY5OWE0Y2NmNWVmMjczOWE5MTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKQEAgLTU5Nyw3ICs1OTcsNiBAQCBOZXR3b3JrUHJv
Y2Vzc1Byb3h5JiBXZWJQcm9jZXNzUG9vbDo6ZW5zdXJlTmV0d29ya1Byb2Nlc3MoV2Vic2l0ZURh
dGFTdG9yZSogd2l0aAogI2lmIEVOQUJMRShSRVNPVVJDRV9MT0FEX1NUQVRJU1RJQ1MpCiAgICAg
V2ViQ29yZTo6VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZSB0aGlyZFBhcnR5Q29va2llQmxv
Y2tpbmdNb2RlID0gV2ViQ29yZTo6VGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZTo6QWxsOwog
ICAgIFdlYkNvcmU6OlNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnRFbmFibGVkIHNhbWVTaXRlU3Ry
aWN0RW5mb3JjZW1lbnRFbmFibGVkID0gV2ViQ29yZTo6U2FtZVNpdGVTdHJpY3RFbmZvcmNlbWVu
dEVuYWJsZWQ6Ok5vOwotICAgIFdlYkNvcmU6OkNOQU1FQ2xvYWtpbmdNaXRpZ2F0aW9uRW5hYmxl
ZCBjbmFtZUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQgPSBXZWJDb3JlOjpDTkFNRUNsb2FraW5n
TWl0aWdhdGlvbkVuYWJsZWQ6Ok5vOwogI2VuZGlmCiAgICAgV2ViQ29yZTo6Rmlyc3RQYXJ0eVdl
YnNpdGVEYXRhUmVtb3ZhbE1vZGUgZmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGUgPSBX
ZWJDb3JlOjpGaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZTo6QWxsQnV0Q29va2llczsK
ICAgICBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiBzdGFuZGFsb25lQXBwbGljYXRpb25Eb21h
aW47CkBAIC02MzEsNyArNjMwLDYgQEAgTmV0d29ya1Byb2Nlc3NQcm94eSYgV2ViUHJvY2Vzc1Bv
b2w6OmVuc3VyZU5ldHdvcmtQcm9jZXNzKFdlYnNpdGVEYXRhU3RvcmUqIHdpdGgKICNpZiBFTkFC
TEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNUSUNTKQogICAgICAgICAgICAgdGhpcmRQYXJ0eUNvb2tp
ZUJsb2NraW5nTW9kZSA9IG5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0
aXN0aWNzUGFyYW1ldGVycy50aGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlOwogICAgICAgICAg
ICAgc2FtZVNpdGVTdHJpY3RFbmZvcmNlbWVudEVuYWJsZWQgPSBuZXR3b3JrU2Vzc2lvblBhcmFt
ZXRlcnMucmVzb3VyY2VMb2FkU3RhdGlzdGljc1BhcmFtZXRlcnMuc2FtZVNpdGVTdHJpY3RFbmZv
cmNlbWVudEVuYWJsZWQ7Ci0gICAgICAgICAgICBjbmFtZUNsb2FraW5nTWl0aWdhdGlvbkVuYWJs
ZWQgPSBuZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMucmVzb3VyY2VMb2FkU3RhdGlzdGljc1BhcmFt
ZXRlcnMuY25hbWVDbG9ha2luZ01pdGlnYXRpb25FbmFibGVkOwogI2VuZGlmCiAgICAgICAgICAg
ICBmaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZSA9IG5ldHdvcmtTZXNzaW9uUGFyYW1l
dGVycy5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy5maXJzdFBhcnR5V2Vic2l0ZURh
dGFSZW1vdmFsTW9kZTsKICAgICAgICAgICAgIHN0YW5kYWxvbmVBcHBsaWNhdGlvbkRvbWFpbiA9
IG5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVy
cy5zdGFuZGFsb25lQXBwbGljYXRpb25Eb21haW47CkBAIC02NjUsNyArNjYzLDYgQEAgTmV0d29y
a1Byb2Nlc3NQcm94eSYgV2ViUHJvY2Vzc1Bvb2w6OmVuc3VyZU5ldHdvcmtQcm9jZXNzKFdlYnNp
dGVEYXRhU3RvcmUqIHdpdGgKICNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNUSUNTKQog
ICAgICAgICAgICAgdGhpcmRQYXJ0eUNvb2tpZUJsb2NraW5nTW9kZSA9IG5ldHdvcmtTZXNzaW9u
UGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy50aGlyZFBhcnR5Q29v
a2llQmxvY2tpbmdNb2RlOwogICAgICAgICAgICAgc2FtZVNpdGVTdHJpY3RFbmZvcmNlbWVudEVu
YWJsZWQgPSBuZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMucmVzb3VyY2VMb2FkU3RhdGlzdGljc1Bh
cmFtZXRlcnMuc2FtZVNpdGVTdHJpY3RFbmZvcmNlbWVudEVuYWJsZWQ7Ci0gICAgICAgICAgICBj
bmFtZUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQgPSBuZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMu
cmVzb3VyY2VMb2FkU3RhdGlzdGljc1BhcmFtZXRlcnMuY25hbWVDbG9ha2luZ01pdGlnYXRpb25F
bmFibGVkOwogI2VuZGlmCiAgICAgICAgICAgICBmaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFs
TW9kZSA9IG5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFy
YW1ldGVycy5maXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZTsKICAgICAgICAgICAgIHN0
YW5kYWxvbmVBcHBsaWNhdGlvbkRvbWFpbiA9IG5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5yZXNv
dXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy5zdGFuZGFsb25lQXBwbGljYXRpb25Eb21haW47
CkBAIC03MTUsNyArNzEyLDYgQEAgTmV0d29ya1Byb2Nlc3NQcm94eSYgV2ViUHJvY2Vzc1Bvb2w6
OmVuc3VyZU5ldHdvcmtQcm9jZXNzKFdlYnNpdGVEYXRhU3RvcmUqIHdpdGgKICNpZiBFTkFCTEUo
UkVTT1VSQ0VfTE9BRF9TVEFUSVNUSUNTKQogICAgICAgICB0aGlyZFBhcnR5Q29va2llQmxvY2tp
bmdNb2RlLAogICAgICAgICBzYW1lU2l0ZVN0cmljdEVuZm9yY2VtZW50RW5hYmxlZCwKLSAgICAg
ICAgY25hbWVDbG9ha2luZ01pdGlnYXRpb25FbmFibGVkLAogI2VuZGlmCiAgICAgICAgIGZpcnN0
UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlLAogICAgICAgICBzdGFuZGFsb25lQXBwbGljYXRp
b25Eb21haW4sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0
YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0KaW5kZXggMjU3ZmI3
YTI5MDFhY2VmZTRjZGFkMzBiZTI0YTBiNjAwOTMxNjNjNi4uZmIzYjIxZmQ5MzYyOGEzNGFlM2Q0
ZGVjZmQ0ZTc5N2NmNjUzMWY2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tCisrKyBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5t
bQpAQCAtOTQsNyArOTQsNiBAQCB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OnBsYXRmb3JtU2V0TmV0
d29ya1BhcmFtZXRlcnMoV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMmCiAgICAgYm9vbCBzaG91
bGRMb2dDb29raWVJbmZvcm1hdGlvbiA9IGZhbHNlOwogICAgIGJvb2wgZW5hYmxlUmVzb3VyY2VM
b2FkU3RhdGlzdGljc0RlYnVnTW9kZSA9IGZhbHNlOwogICAgIGF1dG8gc2FtZVNpdGVTdHJpY3RF
bmZvcmNlbWVudEVuYWJsZWQgPSBXZWJDb3JlOjpTYW1lU2l0ZVN0cmljdEVuZm9yY2VtZW50RW5h
YmxlZDo6Tm87Ci0gICAgYXV0byBjbmFtZUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQgPSBXZWJD
b3JlOjpDTkFNRUNsb2FraW5nTWl0aWdhdGlvbkVuYWJsZWQ6Ok5vOwogICAgIGF1dG8gZmlyc3RQ
YXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1vZGUgPSBXZWJDb3JlOjpGaXJzdFBhcnR5V2Vic2l0ZURh
dGFSZW1vdmFsTW9kZTo6QWxsQnV0Q29va2llczsKICAgICBXZWJDb3JlOjpSZWdpc3RyYWJsZURv
bWFpbiByZXNvdXJjZUxvYWRTdGF0aXN0aWNzTWFudWFsUHJldmFsZW50UmVzb3VyY2UgeyB9Owog
I2lmIEVOQUJMRShSRVNPVVJDRV9MT0FEX1NUQVRJU1RJQ1MpCkBAIC0xMDMsOSArMTAyLDYgQEAg
dm9pZCBXZWJzaXRlRGF0YVN0b3JlOjpwbGF0Zm9ybVNldE5ldHdvcmtQYXJhbWV0ZXJzKFdlYnNp
dGVEYXRhU3RvcmVQYXJhbWV0ZXJzJgogICAgIGlmIChbZGVmYXVsdHMgYm9vbEZvcktleTpbTlNT
dHJpbmcgc3RyaW5nV2l0aEZvcm1hdDpAIkV4cGVyaW1lbnRhbCVAIiwgV2ViUHJlZmVyZW5jZXNL
ZXk6OmlzU2FtZVNpdGVTdHJpY3RFbmZvcmNlbWVudEVuYWJsZWRLZXkoKS5jcmVhdGVDRlN0cmlu
ZygpLmdldCgpXV0pCiAgICAgICAgIHNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnRFbmFibGVkID0g
V2ViQ29yZTo6U2FtZVNpdGVTdHJpY3RFbmZvcmNlbWVudEVuYWJsZWQ6OlllczsKIAotICAgIGlm
IChbZGVmYXVsdHMgYm9vbEZvcktleTpbTlNTdHJpbmcgc3RyaW5nV2l0aEZvcm1hdDpAIkV4cGVy
aW1lbnRhbCVAIiwgV2ViUHJlZmVyZW5jZXNLZXk6OmlzQ05BTUVDbG9ha2luZ01pdGlnYXRpb25F
bmFibGVkS2V5KCkuY3JlYXRlQ0ZTdHJpbmcoKS5nZXQoKV1dKQotICAgICAgICBjbmFtZUNsb2Fr
aW5nTWl0aWdhdGlvbkVuYWJsZWQgPSBXZWJDb3JlOjpDTkFNRUNsb2FraW5nTWl0aWdhdGlvbkVu
YWJsZWQ6OlllczsKLQogICAgIGlmIChbZGVmYXVsdHMgYm9vbEZvcktleTpbTlNTdHJpbmcgc3Ry
aW5nV2l0aEZvcm1hdDpAIkV4cGVyaW1lbnRhbCVAIiwgV2ViUHJlZmVyZW5jZXNLZXk6OmlzRmly
c3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbERpc2FibGVkS2V5KCkuY3JlYXRlQ0ZTdHJpbmcoKS5n
ZXQoKV1dKQogICAgICAgICBmaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZSA9IFdlYkNv
cmU6OkZpcnN0UGFydHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlOjpOb25lOwogICAgIGVsc2UgewpA
QCAtMTgyLDcgKzE3OCw2IEBAIHZvaWQgV2Vic2l0ZURhdGFTdG9yZTo6cGxhdGZvcm1TZXROZXR3
b3JrUGFyYW1ldGVycyhXZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycyYKICAgICBwYXJhbWV0ZXJz
Lm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVy
cy5zaG91bGRJbmNsdWRlTG9jYWxob3N0ID0gc2hvdWxkSW5jbHVkZUxvY2FsaG9zdEluUmVzb3Vy
Y2VMb2FkU3RhdGlzdGljczsKICAgICBwYXJhbWV0ZXJzLm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVy
cy5yZXNvdXJjZUxvYWRTdGF0aXN0aWNzUGFyYW1ldGVycy5lbmFibGVEZWJ1Z01vZGUgPSBlbmFi
bGVSZXNvdXJjZUxvYWRTdGF0aXN0aWNzRGVidWdNb2RlOwogICAgIHBhcmFtZXRlcnMubmV0d29y
a1Nlc3Npb25QYXJhbWV0ZXJzLnJlc291cmNlTG9hZFN0YXRpc3RpY3NQYXJhbWV0ZXJzLnNhbWVT
aXRlU3RyaWN0RW5mb3JjZW1lbnRFbmFibGVkID0gc2FtZVNpdGVTdHJpY3RFbmZvcmNlbWVudEVu
YWJsZWQ7Ci0gICAgcGFyYW1ldGVycy5uZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMucmVzb3VyY2VM
b2FkU3RhdGlzdGljc1BhcmFtZXRlcnMuY25hbWVDbG9ha2luZ01pdGlnYXRpb25FbmFibGVkID0g
Y25hbWVDbG9ha2luZ01pdGlnYXRpb25FbmFibGVkOwogICAgIHBhcmFtZXRlcnMubmV0d29ya1Nl
c3Npb25QYXJhbWV0ZXJzLnJlc291cmNlTG9hZFN0YXRpc3RpY3NQYXJhbWV0ZXJzLmZpcnN0UGFy
dHlXZWJzaXRlRGF0YVJlbW92YWxNb2RlID0gZmlyc3RQYXJ0eVdlYnNpdGVEYXRhUmVtb3ZhbE1v
ZGU7CiAgICAgcGFyYW1ldGVycy5uZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMucmVzb3VyY2VMb2Fk
U3RhdGlzdGljc1BhcmFtZXRlcnMuc3RhbmRhbG9uZUFwcGxpY2F0aW9uRG9tYWluID0gV2ViQ29y
ZTo6UmVnaXN0cmFibGVEb21haW4geyBtX2NvbmZpZ3VyYXRpb24tPnN0YW5kYWxvbmVBcHBsaWNh
dGlvblVSTCgpIH07CiAgICAgcGFyYW1ldGVycy5uZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMucmVz
b3VyY2VMb2FkU3RhdGlzdGljc1BhcmFtZXRlcnMubWFudWFsUHJldmFsZW50UmVzb3VyY2UgPSBX
VEZNb3ZlKHJlc291cmNlTG9hZFN0YXRpc3RpY3NNYW51YWxQcmV2YWxlbnRSZXNvdXJjZSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0
YVN0b3JlLmNwcCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVE
YXRhU3RvcmUuY3BwCmluZGV4IGVkNzRkODA3OWFjZTFjOGU2ODY5MjRlNmIwNDU0MGIwMjcwOTM3
MTkuLmI5ZmI4OTU5MTQ4NGFkNjE2MWVkYTg1MzY4YzYyNmQ5MGFkYmZkOGYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3Rv
cmUuY3BwCkBAIC0yMzE4LDcgKzIzMTgsNiBAQCBXZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycyBX
ZWJzaXRlRGF0YVN0b3JlOjpwYXJhbWV0ZXJzKCkKICNpZiBFTkFCTEUoUkVTT1VSQ0VfTE9BRF9T
VEFUSVNUSUNTKQogICAgICAgICB0aGlyZFBhcnR5Q29va2llQmxvY2tpbmdNb2RlKCksCiAgICAg
ICAgIFdlYkNvcmU6OlNhbWVTaXRlU3RyaWN0RW5mb3JjZW1lbnRFbmFibGVkOjpObywKLSAgICAg
ICAgV2ViQ29yZTo6Q05BTUVDbG9ha2luZ01pdGlnYXRpb25FbmFibGVkOjpObywKICNlbmRpZgog
ICAgICAgICBmaXJzdFBhcnR5V2Vic2l0ZURhdGFSZW1vdmFsTW9kZSwKICAgICAgICAgV1RGTW92
ZShzdGFuZGFsb25lQXBwbGljYXRpb25Eb21haW4pLAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>