<?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>159263</bug_id>
          
          <creation_ts>2016-06-29 08:08:17 -0700</creation_ts>
          <short_desc>Pass SecurityOrigin as references in CORS check code</short_desc>
          <delta_ts>2016-06-29 23:29:26 -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>WebCore 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>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1206379</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-06-29 08:08:17 -0700</bug_when>
    <thetext>Pass SecurityOrigin as references in CORS check code</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206380</commentid>
    <comment_count>1</comment_count>
      <attachid>282346</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-06-29 08:12:26 -0700</bug_when>
    <thetext>Created attachment 282346
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206408</commentid>
    <comment_count>2</comment_count>
      <attachid>282346</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2016-06-29 09:40:03 -0700</bug_when>
    <thetext>Comment on attachment 282346
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=282346&amp;action=review

This is indeed no change in behavior.  If there&apos;s no security origin when doing CORS checks, something has gone horribly wrong

&gt; Source/WebCore/loader/DocumentThreadableLoader.cpp:448
&gt; +    ASSERT(m_document.securityOrigin());

Don&apos;t we only need this to be true if m_origin is non-null?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206474</commentid>
    <comment_count>3</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2016-06-29 13:22:41 -0700</bug_when>
    <thetext>Thanks for the review.

&gt; &gt; Source/WebCore/loader/DocumentThreadableLoader.cpp:448
&gt; &gt; +    ASSERT(m_document.securityOrigin());
&gt; 
&gt; Don&apos;t we only need this to be true if m_origin is non-null?

Right, strictly speaking, the assertion is too wide.
At the same time, having a non-null origin and a document with a null origin sounds worrying.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206655</commentid>
    <comment_count>4</comment_count>
      <attachid>282346</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-29 23:29:22 -0700</bug_when>
    <thetext>Comment on attachment 282346
Patch

Clearing flags on attachment: 282346

Committed r202674: &lt;http://trac.webkit.org/changeset/202674&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1206656</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-29 23:29:26 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>282346</attachid>
            <date>2016-06-29 08:12:26 -0700</date>
            <delta_ts>2016-06-29 23:29:22 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-159263-20160629171204.patch</filename>
            <type>text/plain</type>
            <size>22379</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAyNjE0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2E0NmE2MTY4YjBhOWEy
MThmYjIzM2ZlNTEzODM4ZWE5ZWVjNTNiNi4uODg4MjllMWE5NGM5MGY2MmNkYTAzYjAxYmQzZTlh
OWEzYTQ5ZWI3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDE2LTA2LTI5ICBZb3Vl
bm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBQYXNzIFNlY3VyaXR5T3Jp
Z2luIGFzIHJlZmVyZW5jZXMgaW4gQ09SUyBjaGVjayBjb2RlCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTkyNjMKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBjaGFuZ2Ugb2YgYmVoYXZpb3IuCisKKyAg
ICAgICAgKiBjc3MvQ1NTSW1hZ2VTZXRWYWx1ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NJ
bWFnZVNldFZhbHVlOjpjYWNoZWRJbWFnZVNldCk6CisgICAgICAgICogY3NzL0NTU0ltYWdlVmFs
dWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTSW1hZ2VWYWx1ZTo6Y2FjaGVkSW1hZ2UpOgor
ICAgICAgICAqIGRvbS9TY3JpcHRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcmlw
dEVsZW1lbnQ6OnJlcXVlc3RTY3JpcHQpOgorICAgICAgICAqIGxvYWRlci9Dcm9zc09yaWdpbkFj
Y2Vzc0NvbnRyb2wuY3BwOgorICAgICAgICAoV2ViQ29yZTo6dXBkYXRlUmVxdWVzdEZvckFjY2Vz
c0NvbnRyb2wpOgorICAgICAgICAoV2ViQ29yZTo6Y3JlYXRlQWNjZXNzQ29udHJvbFByZWZsaWdo
dFJlcXVlc3QpOgorICAgICAgICAoV2ViQ29yZTo6cGFzc2VzQWNjZXNzQ29udHJvbENoZWNrKToK
KyAgICAgICAgKiBsb2FkZXIvQ3Jvc3NPcmlnaW5BY2Nlc3NDb250cm9sLmg6CisgICAgICAgICog
bG9hZGVyL0Nyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpDcm9zc09yaWdpblByZWZsaWdodENoZWNrZXI6OnZhbGlkYXRlUHJlZmxpZ2h0UmVzcG9uc2Up
OgorICAgICAgICAqIGxvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpEb2N1bWVudFRocmVhZGFibGVM
b2FkZXIpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjptYWtl
Q3Jvc3NPcmlnaW5BY2Nlc3NSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50VGhy
ZWFkYWJsZUxvYWRlcjo6cHJlZmxpZ2h0U3VjY2Vzcyk6CisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudFRocmVhZGFibGVMb2FkZXI6OmlzQWxsb3dlZFJlZGlyZWN0KToKKyAgICAgICAgKFdlYkNv
cmU6OkRvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6c2VjdXJpdHlPcmlnaW4pOgorICAgICAgICAq
IGxvYWRlci9Eb2N1bWVudFRocmVhZGFibGVMb2FkZXIuaDoKKyAgICAgICAgKiBsb2FkZXIvSW1h
Z2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VMb2FkZXI6OnVwZGF0ZUZyb21F
bGVtZW50KToKKyAgICAgICAgKiBsb2FkZXIvTGlua0xvYWRlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpwcmVsb2FkSWZOZWVkZWQpOgorICAgICAgICAqIGxvYWRlci9NZWRpYVJlc291cmNlTG9h
ZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUmVzb3VyY2VMb2FkZXI6OnJlcXVlc3RS
ZXNvdXJjZSk6CisgICAgICAgICogbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlN1YnJlc291cmNlTG9hZGVyOjpjaGVja0Nyb3NzT3JpZ2luQWNjZXNzQ29u
dHJvbCk6CisgICAgICAgICogbG9hZGVyL1RleHRUcmFja0xvYWRlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpUZXh0VHJhY2tMb2FkZXI6OmxvYWQpOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZTo6cGFz
c2VzQWNjZXNzQ29udHJvbENoZWNrKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkUmVz
b3VyY2VSZXF1ZXN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFJlc291cmNlUmVxdWVz
dDo6c2V0QXNQb3RlbnRpYWxseUNyb3NzT3JpZ2luKToKKwogMjAxNi0wNi0yOCAgWW91ZW5uIEZh
YmxldCAgPHlvdWVubmZAZ21haWwuY29tPgogCiAgICAgICAgIFJlbW92ZSBUaHJlYWRhYmxlTG9h
ZGVyT3B0aW9ucyBvcmlnaW4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFn
ZVNldFZhbHVlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZVNldFZhbHVlLmNwcApp
bmRleCA4NDlkODBmZmRiZmMxYTI3ZGNmYjdkODUzOWI1MWJiMDNiZmE3OTJhLi4wYzY3ZmFkMTNl
YWRjZTdkMDRjODgxOTM0ZDA1ZjIyMDc5MWE3MTdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTSW1hZ2VTZXRWYWx1ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0lt
YWdlU2V0VmFsdWUuY3BwCkBAIC0xMTgsOCArMTE4LDEwIEBAIFN0eWxlQ2FjaGVkSW1hZ2VTZXQq
IENTU0ltYWdlU2V0VmFsdWU6OmNhY2hlZEltYWdlU2V0KENhY2hlZFJlc291cmNlTG9hZGVyJiBs
b2FkCiAgICAgICAgIEltYWdlV2l0aFNjYWxlIGltYWdlID0gYmVzdEltYWdlRm9yU2NhbGVGYWN0
b3IoKTsKICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QoUmVzb3VyY2VSZXF1
ZXN0KGRvY3VtZW50LT5jb21wbGV0ZVVSTChpbWFnZS5pbWFnZVVSTCkpLCBvcHRpb25zKTsKICAg
ICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IoY2FjaGVkUmVzb3VyY2VSZXF1ZXN0SW5pdGlhdG9y
cygpLmNzcyk7Ci0gICAgICAgIGlmIChvcHRpb25zLnJlcXVlc3RPcmlnaW5Qb2xpY3koKSA9PSBQ
b3RlbnRpYWxseUNyb3NzT3JpZ2luRW5hYmxlZCkKLSAgICAgICAgICAgIHVwZGF0ZVJlcXVlc3RG
b3JBY2Nlc3NDb250cm9sKHJlcXVlc3QubXV0YWJsZVJlc291cmNlUmVxdWVzdCgpLCBkb2N1bWVu
dC0+c2VjdXJpdHlPcmlnaW4oKSwgb3B0aW9ucy5hbGxvd0NyZWRlbnRpYWxzKCkpOworICAgICAg
ICBpZiAob3B0aW9ucy5yZXF1ZXN0T3JpZ2luUG9saWN5KCkgPT0gUG90ZW50aWFsbHlDcm9zc09y
aWdpbkVuYWJsZWQpIHsKKyAgICAgICAgICAgIEFTU0VSVChkb2N1bWVudC0+c2VjdXJpdHlPcmln
aW4oKSk7CisgICAgICAgICAgICB1cGRhdGVSZXF1ZXN0Rm9yQWNjZXNzQ29udHJvbChyZXF1ZXN0
Lm11dGFibGVSZXNvdXJjZVJlcXVlc3QoKSwgKmRvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLCBv
cHRpb25zLmFsbG93Q3JlZGVudGlhbHMoKSk7CisgICAgICAgIH0KICAgICAgICAgaWYgKENhY2hl
ZFJlc291cmNlSGFuZGxlPENhY2hlZEltYWdlPiBjYWNoZWRJbWFnZSA9IGxvYWRlci5yZXF1ZXN0
SW1hZ2UocmVxdWVzdCkpIHsKICAgICAgICAgICAgIGRldGFjaFBlbmRpbmdJbWFnZSgpOwogICAg
ICAgICAgICAgbV9pbWFnZVNldCA9IFN0eWxlQ2FjaGVkSW1hZ2VTZXQ6OmNyZWF0ZShjYWNoZWRJ
bWFnZS5nZXQoKSwgaW1hZ2Uuc2NhbGVGYWN0b3IsIHRoaXMpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0ltYWdlVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0lt
YWdlVmFsdWUuY3BwCmluZGV4IGY4YWRhZjBkM2ViNDRjNDMzMDNhMzliNDNmOTY4NGNlMWQ3YjFm
M2MuLjY4MTMxYmUzZjliMjU5YTIzYjhlNTdlMjg0OGYxMDIyNWY5OTk2MjIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZVZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTSW1hZ2VWYWx1ZS5jcHAKQEAgLTgyLDkgKzgyLDEwIEBAIFN0eWxlQ2FjaGVkSW1h
Z2UqIENTU0ltYWdlVmFsdWU6OmNhY2hlZEltYWdlKENhY2hlZFJlc291cmNlTG9hZGVyJiBsb2Fk
ZXIsIGNvbnN0CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIHJlcXVlc3Quc2V0SW5pdGlhdG9y
KG1faW5pdGlhdG9yTmFtZSk7CiAKLSAgICAgICAgaWYgKG9wdGlvbnMucmVxdWVzdE9yaWdpblBv
bGljeSgpID09IFBvdGVudGlhbGx5Q3Jvc3NPcmlnaW5FbmFibGVkKQotICAgICAgICAgICAgdXBk
YXRlUmVxdWVzdEZvckFjY2Vzc0NvbnRyb2wocmVxdWVzdC5tdXRhYmxlUmVzb3VyY2VSZXF1ZXN0
KCksIGxvYWRlci5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLCBvcHRpb25zLmFsbG93Q3Jl
ZGVudGlhbHMoKSk7Ci0KKyAgICAgICAgaWYgKG9wdGlvbnMucmVxdWVzdE9yaWdpblBvbGljeSgp
ID09IFBvdGVudGlhbGx5Q3Jvc3NPcmlnaW5FbmFibGVkKSB7CisgICAgICAgICAgICBBU1NFUlQo
bG9hZGVyLmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCkpOworICAgICAgICAgICAgdXBkYXRl
UmVxdWVzdEZvckFjY2Vzc0NvbnRyb2wocmVxdWVzdC5tdXRhYmxlUmVzb3VyY2VSZXF1ZXN0KCks
ICpsb2FkZXIuZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgb3B0aW9ucy5hbGxvd0NyZWRl
bnRpYWxzKCkpOworICAgICAgICB9CiAgICAgICAgIGlmIChDYWNoZWRSZXNvdXJjZUhhbmRsZTxD
YWNoZWRJbWFnZT4gY2FjaGVkSW1hZ2UgPSBsb2FkZXIucmVxdWVzdEltYWdlKHJlcXVlc3QpKSB7
CiAgICAgICAgICAgICBkZXRhY2hQZW5kaW5nSW1hZ2UoKTsKICAgICAgICAgICAgIG1faW1hZ2Ug
PSBTdHlsZUNhY2hlZEltYWdlOjpjcmVhdGUoY2FjaGVkSW1hZ2UuZ2V0KCkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUv
ZG9tL1NjcmlwdEVsZW1lbnQuY3BwCmluZGV4IGIxYTQ0MTllZTM3NDFiYTJkMmY5MmQxMjc5ZWI5
YmE0NDhmN2YzZmYuLjAzNTVmNmM1YmI3NmU0ZmNlNTUyNTRjMjNjMTU1ODE4ZGJmZDY1OTYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9TY3JpcHRFbGVtZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5jcHAKQEAgLTI3MSw3ICsyNzEsOCBAQCBib29s
IFNjcmlwdEVsZW1lbnQ6OnJlcXVlc3RTY3JpcHQoY29uc3QgU3RyaW5nJiBzb3VyY2VVcmwpCiAg
ICAgICAgIGlmICghY3Jvc3NPcmlnaW5Nb2RlLmlzTnVsbCgpKSB7CiAgICAgICAgICAgICBtX3Jl
cXVlc3RVc2VzQWNjZXNzQ29udHJvbCA9IHRydWU7CiAgICAgICAgICAgICBTdG9yZWRDcmVkZW50
aWFscyBhbGxvd0NyZWRlbnRpYWxzID0gZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UoY3Jv
c3NPcmlnaW5Nb2RlLCAidXNlLWNyZWRlbnRpYWxzIikgPyBBbGxvd1N0b3JlZENyZWRlbnRpYWxz
IDogRG9Ob3RBbGxvd1N0b3JlZENyZWRlbnRpYWxzOwotICAgICAgICAgICAgdXBkYXRlUmVxdWVz
dEZvckFjY2Vzc0NvbnRyb2wocmVxdWVzdC5tdXRhYmxlUmVzb3VyY2VSZXF1ZXN0KCksIG1fZWxl
bWVudC5kb2N1bWVudCgpLnNlY3VyaXR5T3JpZ2luKCksIGFsbG93Q3JlZGVudGlhbHMpOworICAg
ICAgICAgICAgQVNTRVJUKG1fZWxlbWVudC5kb2N1bWVudCgpLnNlY3VyaXR5T3JpZ2luKCkpOwor
ICAgICAgICAgICAgdXBkYXRlUmVxdWVzdEZvckFjY2Vzc0NvbnRyb2wocmVxdWVzdC5tdXRhYmxl
UmVzb3VyY2VSZXF1ZXN0KCksICptX2VsZW1lbnQuZG9jdW1lbnQoKS5zZWN1cml0eU9yaWdpbigp
LCBhbGxvd0NyZWRlbnRpYWxzKTsKICAgICAgICAgfQogICAgICAgICByZXF1ZXN0LnNldENoYXJz
ZXQoc2NyaXB0Q2hhcnNldCgpKTsKICAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IoJmVsZW1l
bnQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jvc3NPcmlnaW5BY2Nl
c3NDb250cm9sLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpbkFjY2Vzc0Nv
bnRyb2wuY3BwCmluZGV4IGFkMGNmMWRiN2UzNzBjZDJhOWMxZGYyMjg1ZGQ4MjZmZGNhOWM4MjAu
LmRjNzU3MGFmOGFhN2NkMDdlZWIzZjk2MzVjMWQyMzdkOGY5YzlkZWUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpbkFjY2Vzc0NvbnRyb2wuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Dcm9zc09yaWdpbkFjY2Vzc0NvbnRyb2wuY3BwCkBAIC05OCwx
NCArOTgsMTQgQEAgYm9vbCBpc09uQWNjZXNzQ29udHJvbFJlc3BvbnNlSGVhZGVyV2hpdGVsaXN0
KGNvbnN0IFN0cmluZyYgbmFtZSkKICAgICByZXR1cm4gYWxsb3dlZENyb3NzT3JpZ2luUmVzcG9u
c2VIZWFkZXJzLmdldCgpLmNvbnRhaW5zKG5hbWUpOwogfQogCi12b2lkIHVwZGF0ZVJlcXVlc3RG
b3JBY2Nlc3NDb250cm9sKFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgU2VjdXJpdHlPcmlnaW4q
IHNlY3VyaXR5T3JpZ2luLCBTdG9yZWRDcmVkZW50aWFscyBhbGxvd0NyZWRlbnRpYWxzKQordm9p
ZCB1cGRhdGVSZXF1ZXN0Rm9yQWNjZXNzQ29udHJvbChSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3Qs
IFNlY3VyaXR5T3JpZ2luJiBzZWN1cml0eU9yaWdpbiwgU3RvcmVkQ3JlZGVudGlhbHMgYWxsb3dD
cmVkZW50aWFscykKIHsKICAgICByZXF1ZXN0LnJlbW92ZUNyZWRlbnRpYWxzKCk7CiAgICAgcmVx
dWVzdC5zZXRBbGxvd0Nvb2tpZXMoYWxsb3dDcmVkZW50aWFscyA9PSBBbGxvd1N0b3JlZENyZWRl
bnRpYWxzKTsKLSAgICByZXF1ZXN0LnNldEhUVFBPcmlnaW4oc2VjdXJpdHlPcmlnaW4tPnRvU3Ry
aW5nKCkpOworICAgIHJlcXVlc3Quc2V0SFRUUE9yaWdpbihzZWN1cml0eU9yaWdpbi50b1N0cmlu
ZygpKTsKIH0KIAotUmVzb3VyY2VSZXF1ZXN0IGNyZWF0ZUFjY2Vzc0NvbnRyb2xQcmVmbGlnaHRS
ZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgU2VjdXJpdHlPcmlnaW4qIHNl
Y3VyaXR5T3JpZ2luKQorUmVzb3VyY2VSZXF1ZXN0IGNyZWF0ZUFjY2Vzc0NvbnRyb2xQcmVmbGln
aHRSZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgU2VjdXJpdHlPcmlnaW4m
IHNlY3VyaXR5T3JpZ2luKQogewogICAgIFJlc291cmNlUmVxdWVzdCBwcmVmbGlnaHRSZXF1ZXN0
KHJlcXVlc3QudXJsKCkpOwogICAgIHVwZGF0ZVJlcXVlc3RGb3JBY2Nlc3NDb250cm9sKHByZWZs
aWdodFJlcXVlc3QsIHNlY3VyaXR5T3JpZ2luLCBEb05vdEFsbG93U3RvcmVkQ3JlZGVudGlhbHMp
OwpAQCAtMTUyLDcgKzE1Miw3IEBAIHZvaWQgY2xlYW5SZWRpcmVjdGVkUmVxdWVzdEZvckFjY2Vz
c0NvbnRyb2woUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogICAgIHJlcXVlc3QuY2xlYXJIVFRQ
QWNjZXB0RW5jb2RpbmcoKTsKIH0KIAotYm9vbCBwYXNzZXNBY2Nlc3NDb250cm9sQ2hlY2soY29u
c3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UsIFN0b3JlZENyZWRlbnRpYWxzIGluY2x1ZGVD
cmVkZW50aWFscywgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luLCBTdHJpbmcmIGVycm9y
RGVzY3JpcHRpb24pCitib29sIHBhc3Nlc0FjY2Vzc0NvbnRyb2xDaGVjayhjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJiByZXNwb25zZSwgU3RvcmVkQ3JlZGVudGlhbHMgaW5jbHVkZUNyZWRlbnRpYWxz
LCBTZWN1cml0eU9yaWdpbiYgc2VjdXJpdHlPcmlnaW4sIFN0cmluZyYgZXJyb3JEZXNjcmlwdGlv
bikKIHsKICAgICAvLyBBIHdpbGRjYXJkIEFjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdpbiBjYW4g
bm90IGJlIHVzZWQgaWYgY3JlZGVudGlhbHMgYXJlIHRvIGJlIHNlbnQsCiAgICAgLy8gZXZlbiB3
aXRoIEFjY2Vzcy1Db250cm9sLUFsbG93LUNyZWRlbnRpYWxzIHNldCB0byB0cnVlLgpAQCAtMTYx
LDExICsxNjEsMTEgQEAgYm9vbCBwYXNzZXNBY2Nlc3NDb250cm9sQ2hlY2soY29uc3QgUmVzb3Vy
Y2VSZXNwb25zZSYgcmVzcG9uc2UsIFN0b3JlZENyZWRlbnRpYWwKICAgICAgICAgcmV0dXJuIHRy
dWU7CiAKICAgICAvLyBGSVhNRTogQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luIGNhbiBjb250
YWluIGEgbGlzdCBvZiBvcmlnaW5zLgotICAgIGlmIChhY2Nlc3NDb250cm9sT3JpZ2luU3RyaW5n
ICE9IHNlY3VyaXR5T3JpZ2luLT50b1N0cmluZygpKSB7CisgICAgaWYgKGFjY2Vzc0NvbnRyb2xP
cmlnaW5TdHJpbmcgIT0gc2VjdXJpdHlPcmlnaW4udG9TdHJpbmcoKSkgewogICAgICAgICBpZiAo
YWNjZXNzQ29udHJvbE9yaWdpblN0cmluZyA9PSAiKiIpCiAgICAgICAgICAgICBlcnJvckRlc2Ny
aXB0aW9uID0gIkNhbm5vdCB1c2Ugd2lsZGNhcmQgaW4gQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3Jp
Z2luIHdoZW4gY3JlZGVudGlhbHMgZmxhZyBpcyB0cnVlLiI7CiAgICAgICAgIGVsc2UKLSAgICAg
ICAgICAgIGVycm9yRGVzY3JpcHRpb24gPSAgIk9yaWdpbiAiICsgc2VjdXJpdHlPcmlnaW4tPnRv
U3RyaW5nKCkgKyAiIGlzIG5vdCBhbGxvd2VkIGJ5IEFjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdp
bi4iOworICAgICAgICAgICAgZXJyb3JEZXNjcmlwdGlvbiA9ICAiT3JpZ2luICIgKyBzZWN1cml0
eU9yaWdpbi50b1N0cmluZygpICsgIiBpcyBub3QgYWxsb3dlZCBieSBBY2Nlc3MtQ29udHJvbC1B
bGxvdy1PcmlnaW4uIjsKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Nyb3NzT3JpZ2luQWNjZXNzQ29udHJvbC5oIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0Nyb3NzT3JpZ2luQWNjZXNzQ29udHJvbC5oCmluZGV4IGM1NTI0
YjBiYWQwYTQwMDMxNGFhODZlODc1ZWUwNmQxYjAzYjdlODkuLjI2YzQ5N2Q1NzMwNTliNTEwYWRh
N2FlODUwMDEyNjZlZTY3NTQ1ZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9D
cm9zc09yaWdpbkFjY2Vzc0NvbnRyb2wuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ3Jv
c3NPcmlnaW5BY2Nlc3NDb250cm9sLmgKQEAgLTQ4LDEzICs0OCwxMyBAQCBib29sIGlzT25BY2Nl
c3NDb250cm9sU2ltcGxlUmVxdWVzdE1ldGhvZFdoaXRlbGlzdChjb25zdCBTdHJpbmcmKTsKIGJv
b2wgaXNPbkFjY2Vzc0NvbnRyb2xTaW1wbGVSZXF1ZXN0SGVhZGVyV2hpdGVsaXN0KEhUVFBIZWFk
ZXJOYW1lLCBjb25zdCBTdHJpbmcmIHZhbHVlKTsKIGJvb2wgaXNPbkFjY2Vzc0NvbnRyb2xSZXNw
b25zZUhlYWRlcldoaXRlbGlzdChjb25zdCBTdHJpbmcmKTsKIAotdm9pZCB1cGRhdGVSZXF1ZXN0
Rm9yQWNjZXNzQ29udHJvbChSZXNvdXJjZVJlcXVlc3QmLCBTZWN1cml0eU9yaWdpbiosIFN0b3Jl
ZENyZWRlbnRpYWxzKTsKLVJlc291cmNlUmVxdWVzdCBjcmVhdGVBY2Nlc3NDb250cm9sUHJlZmxp
Z2h0UmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBTZWN1cml0eU9yaWdpbiopOwordm9p
ZCB1cGRhdGVSZXF1ZXN0Rm9yQWNjZXNzQ29udHJvbChSZXNvdXJjZVJlcXVlc3QmLCBTZWN1cml0
eU9yaWdpbiYsIFN0b3JlZENyZWRlbnRpYWxzKTsKK1Jlc291cmNlUmVxdWVzdCBjcmVhdGVBY2Nl
c3NDb250cm9sUHJlZmxpZ2h0UmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBTZWN1cml0
eU9yaWdpbiYpOwogCiBib29sIGlzVmFsaWRDcm9zc09yaWdpblJlZGlyZWN0aW9uVVJMKGNvbnN0
IFVSTCYpOwogdm9pZCBjbGVhblJlZGlyZWN0ZWRSZXF1ZXN0Rm9yQWNjZXNzQ29udHJvbChSZXNv
dXJjZVJlcXVlc3QmKTsKIAotYm9vbCBwYXNzZXNBY2Nlc3NDb250cm9sQ2hlY2soY29uc3QgUmVz
b3VyY2VSZXNwb25zZSYsIFN0b3JlZENyZWRlbnRpYWxzLCBTZWN1cml0eU9yaWdpbiosIFN0cmlu
ZyYgZXJyb3JEZXNjcmlwdGlvbik7Citib29sIHBhc3Nlc0FjY2Vzc0NvbnRyb2xDaGVjayhjb25z
dCBSZXNvdXJjZVJlc3BvbnNlJiwgU3RvcmVkQ3JlZGVudGlhbHMsIFNlY3VyaXR5T3JpZ2luJiwg
U3RyaW5nJiBlcnJvckRlc2NyaXB0aW9uKTsKIHZvaWQgcGFyc2VBY2Nlc3NDb250cm9sRXhwb3Nl
SGVhZGVyc0FsbG93TGlzdChjb25zdCBTdHJpbmcmIGhlYWRlclZhbHVlLCBIVFRQSGVhZGVyU2V0
Jik7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9Dcm9zc09yaWdpblByZWZsaWdodENoZWNrZXIuY3BwIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL0Nyb3NzT3JpZ2luUHJlZmxpZ2h0Q2hlY2tlci5jcHAKaW5kZXggMWEzM2JlOTdhNjVi
ZTNhMDM3OTMwNDQwYTYyZDMyMmRmMDI0OTY2My4uYjhmOGMzMDNhODI5M2JkZmNiNDE5YjYyYTFm
NmZjMTMwNzEzNzVmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Nyb3NzT3Jp
Z2luUHJlZmxpZ2h0Q2hlY2tlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Nyb3Nz
T3JpZ2luUHJlZmxpZ2h0Q2hlY2tlci5jcHAKQEAgLTgyLDcgKzgyLDcgQEAgdm9pZCBDcm9zc09y
aWdpblByZWZsaWdodENoZWNrZXI6OnZhbGlkYXRlUHJlZmxpZ2h0UmVzcG9uc2UoRG9jdW1lbnRU
aHJlYWRhYmxlTG8KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIENyb3NzT3JpZ2luUHJl
ZmxpZ2h0UmVzdWx0Q2FjaGU6OnNpbmdsZXRvbigpLmFwcGVuZEVudHJ5KGxvYWRlci5zZWN1cml0
eU9yaWdpbigpLT50b1N0cmluZygpLCByZXF1ZXN0LnVybCgpLCBXVEZNb3ZlKHJlc3VsdCkpOwor
ICAgIENyb3NzT3JpZ2luUHJlZmxpZ2h0UmVzdWx0Q2FjaGU6OnNpbmdsZXRvbigpLmFwcGVuZEVu
dHJ5KGxvYWRlci5zZWN1cml0eU9yaWdpbigpLnRvU3RyaW5nKCksIHJlcXVlc3QudXJsKCksIFdU
Rk1vdmUocmVzdWx0KSk7CiAgICAgbG9hZGVyLnByZWZsaWdodFN1Y2Nlc3MoV1RGTW92ZShyZXF1
ZXN0KSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFRo
cmVhZGFibGVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFk
YWJsZUxvYWRlci5jcHAKaW5kZXggNjI2MmFlYzJiY2UwOTVhM2M5NGQyNzE1NjRhNGY5MjdmZmFm
MGI4OC4uY2U0MjM2NTVlNTI2NGVmODgxNDkwNThhMWRiMTQzMTU4MGFhNWYyYSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5jcHAKQEAg
LTg2LDcgKzg2LDcgQEAgRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyOjpEb2N1bWVudFRocmVhZGFi
bGVMb2FkZXIoRG9jdW1lbnQmIGRvY3VtZW50LCBUaHJlYWRhYmwKICAgICAsIG1fZG9jdW1lbnQo
ZG9jdW1lbnQpCiAgICAgLCBtX29wdGlvbnMob3B0aW9ucykKICAgICAsIG1fb3JpZ2luKFdURk1v
dmUob3JpZ2luKSkKLSAgICAsIG1fc2FtZU9yaWdpblJlcXVlc3Qoc2VjdXJpdHlPcmlnaW4oKS0+
Y2FuUmVxdWVzdChyZXF1ZXN0LnVybCgpKSkKKyAgICAsIG1fc2FtZU9yaWdpblJlcXVlc3Qoc2Vj
dXJpdHlPcmlnaW4oKS5jYW5SZXF1ZXN0KHJlcXVlc3QudXJsKCkpKQogICAgICwgbV9zaW1wbGVS
ZXF1ZXN0KHRydWUpCiAgICAgLCBtX2FzeW5jKGJsb2NraW5nQmVoYXZpb3IgPT0gTG9hZEFzeW5j
aHJvbm91c2x5KQogICAgICwgbV9jb250ZW50U2VjdXJpdHlQb2xpY3koV1RGTW92ZShjb250ZW50
U2VjdXJpdHlQb2xpY3kpKQpAQCAtMTIwLDcgKzEyMCw3IEBAIHZvaWQgRG9jdW1lbnRUaHJlYWRh
YmxlTG9hZGVyOjptYWtlQ3Jvc3NPcmlnaW5BY2Nlc3NSZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVx
dWVzCiAgICAgICAgIG1ha2VTaW1wbGVDcm9zc09yaWdpbkFjY2Vzc1JlcXVlc3QoY3Jvc3NPcmln
aW5SZXF1ZXN0KTsKICAgICBlbHNlIHsKICAgICAgICAgbV9zaW1wbGVSZXF1ZXN0ID0gZmFsc2U7
Ci0gICAgICAgIGlmIChDcm9zc09yaWdpblByZWZsaWdodFJlc3VsdENhY2hlOjpzaW5nbGV0b24o
KS5jYW5Ta2lwUHJlZmxpZ2h0KHNlY3VyaXR5T3JpZ2luKCktPnRvU3RyaW5nKCksIGNyb3NzT3Jp
Z2luUmVxdWVzdC51cmwoKSwgbV9vcHRpb25zLmFsbG93Q3JlZGVudGlhbHMoKSwgY3Jvc3NPcmln
aW5SZXF1ZXN0Lmh0dHBNZXRob2QoKSwgY3Jvc3NPcmlnaW5SZXF1ZXN0Lmh0dHBIZWFkZXJGaWVs
ZHMoKSkpCisgICAgICAgIGlmIChDcm9zc09yaWdpblByZWZsaWdodFJlc3VsdENhY2hlOjpzaW5n
bGV0b24oKS5jYW5Ta2lwUHJlZmxpZ2h0KHNlY3VyaXR5T3JpZ2luKCkudG9TdHJpbmcoKSwgY3Jv
c3NPcmlnaW5SZXF1ZXN0LnVybCgpLCBtX29wdGlvbnMuYWxsb3dDcmVkZW50aWFscygpLCBjcm9z
c09yaWdpblJlcXVlc3QuaHR0cE1ldGhvZCgpLCBjcm9zc09yaWdpblJlcXVlc3QuaHR0cEhlYWRl
ckZpZWxkcygpKSkKICAgICAgICAgICAgIHByZWZsaWdodFN1Y2Nlc3MoV1RGTW92ZShjcm9zc09y
aWdpblJlcXVlc3QpKTsKICAgICAgICAgZWxzZQogICAgICAgICAgICAgbWFrZUNyb3NzT3JpZ2lu
QWNjZXNzUmVxdWVzdFdpdGhQcmVmbGlnaHQoV1RGTW92ZShjcm9zc09yaWdpblJlcXVlc3QpKTsK
QEAgLTMyNyw3ICszMjcsNyBAQCB2b2lkIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6ZGlkRmFp
bCh1bnNpZ25lZCBsb25nLCBjb25zdCBSZXNvdXJjZUVycm9yJiBlcnJvcgogdm9pZCBEb2N1bWVu
dFRocmVhZGFibGVMb2FkZXI6OnByZWZsaWdodFN1Y2Nlc3MoUmVzb3VyY2VSZXF1ZXN0JiYgcmVx
dWVzdCkKIHsKICAgICBSZXNvdXJjZVJlcXVlc3QgYWN0dWFsUmVxdWVzdChXVEZNb3ZlKHJlcXVl
c3QpKTsKLSAgICBhY3R1YWxSZXF1ZXN0LnNldEhUVFBPcmlnaW4oc2VjdXJpdHlPcmlnaW4oKS0+
dG9TdHJpbmcoKSk7CisgICAgYWN0dWFsUmVxdWVzdC5zZXRIVFRQT3JpZ2luKHNlY3VyaXR5T3Jp
Z2luKCkudG9TdHJpbmcoKSk7CiAKICAgICBtX3ByZWZsaWdodENoZWNrZXIgPSBOdWxsb3B0Owog
CkBAIC00MzUsNyArNDM1LDcgQEAgYm9vbCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmlzQWxs
b3dlZFJlZGlyZWN0KGNvbnN0IFVSTCYgdXJsKQogICAgIGlmIChtX29wdGlvbnMuY3Jvc3NPcmln
aW5SZXF1ZXN0UG9saWN5ID09IEFsbG93Q3Jvc3NPcmlnaW5SZXF1ZXN0cykKICAgICAgICAgcmV0
dXJuIHRydWU7CiAKLSAgICByZXR1cm4gbV9zYW1lT3JpZ2luUmVxdWVzdCAmJiBzZWN1cml0eU9y
aWdpbigpLT5jYW5SZXF1ZXN0KHVybCk7CisgICAgcmV0dXJuIG1fc2FtZU9yaWdpblJlcXVlc3Qg
JiYgc2VjdXJpdHlPcmlnaW4oKS5jYW5SZXF1ZXN0KHVybCk7CiB9CiAKIGJvb2wgRG9jdW1lbnRU
aHJlYWRhYmxlTG9hZGVyOjppc1hNTEh0dHBSZXF1ZXN0KCkgY29uc3QKQEAgLTQ0Myw5ICs0NDMs
MTAgQEAgYm9vbCBEb2N1bWVudFRocmVhZGFibGVMb2FkZXI6OmlzWE1MSHR0cFJlcXVlc3QoKSBj
b25zdAogICAgIHJldHVybiBtX29wdGlvbnMuaW5pdGlhdG9yID09IGNhY2hlZFJlc291cmNlUmVx
dWVzdEluaXRpYXRvcnMoKS54bWxodHRwcmVxdWVzdDsKIH0KIAotU2VjdXJpdHlPcmlnaW4qIERv
Y3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6c2VjdXJpdHlPcmlnaW4oKSBjb25zdAorU2VjdXJpdHlP
cmlnaW4mIERvY3VtZW50VGhyZWFkYWJsZUxvYWRlcjo6c2VjdXJpdHlPcmlnaW4oKSBjb25zdAog
ewotICAgIHJldHVybiBtX29yaWdpbiA/IG1fb3JpZ2luLmdldCgpIDogbV9kb2N1bWVudC5zZWN1
cml0eU9yaWdpbigpOworICAgIEFTU0VSVChtX2RvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCkpOwor
ICAgIHJldHVybiBtX29yaWdpbiA/ICptX29yaWdpbiA6ICptX2RvY3VtZW50LnNlY3VyaXR5T3Jp
Z2luKCk7CiB9CiAKIGNvbnN0IENvbnRlbnRTZWN1cml0eVBvbGljeSYgRG9jdW1lbnRUaHJlYWRh
YmxlTG9hZGVyOjpjb250ZW50U2VjdXJpdHlQb2xpY3koKSBjb25zdApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5oIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL0RvY3VtZW50VGhyZWFkYWJsZUxvYWRlci5oCmluZGV4IDZjYzZiMGUzN2I5
OTU4MGQxMGU4NTRkYTZhNjIwNWI0Y2JkYTgwMmEuLjg3YzhhOGJmNmE4NGFiYjA3Yzg0Y2VjNmU4
Mzg1YTkwZDdkNTY4MmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVu
dFRocmVhZGFibGVMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRU
aHJlYWRhYmxlTG9hZGVyLmgKQEAgLTk3LDcgKzk3LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
CiAgICAgICAgIGJvb2wgaXNYTUxIdHRwUmVxdWVzdCgpIGNvbnN0IGZpbmFsOwogCi0gICAgICAg
IFNlY3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbigpIGNvbnN0OworICAgICAgICBTZWN1cml0
eU9yaWdpbiYgc2VjdXJpdHlPcmlnaW4oKSBjb25zdDsKICAgICAgICAgY29uc3QgQ29udGVudFNl
Y3VyaXR5UG9saWN5JiBjb250ZW50U2VjdXJpdHlQb2xpY3koKSBjb25zdDsKIAogICAgICAgICBE
b2N1bWVudCYgZG9jdW1lbnQoKSB7IHJldHVybiBtX2RvY3VtZW50OyB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvSW1hZ2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0ltYWdlTG9hZGVyLmNwcAppbmRleCAwZjJiN2Q1ZGE0ZjZjOGY1Y2ZlY2ZhN2JmNzFjNWVj
NWM3ZmM1ZmRiLi40Y2Q1ZWMzOTcyNzZhYWEzNGIwNjc3MTFjNmJmMzY3NzNhZmEyYjE4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvSW1hZ2VMb2FkZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9JbWFnZUxvYWRlci5jcHAKQEAgLTE4Miw3ICsxODIsOCBAQCB2b2lk
IEltYWdlTG9hZGVyOjp1cGRhdGVGcm9tRWxlbWVudCgpCiAgICAgICAgIFN0cmluZyBjcm9zc09y
aWdpbk1vZGUgPSBlbGVtZW50KCkuZmFzdEdldEF0dHJpYnV0ZShIVE1MTmFtZXM6OmNyb3Nzb3Jp
Z2luQXR0cik7CiAgICAgICAgIGlmICghY3Jvc3NPcmlnaW5Nb2RlLmlzTnVsbCgpKSB7CiAgICAg
ICAgICAgICBTdG9yZWRDcmVkZW50aWFscyBhbGxvd0NyZWRlbnRpYWxzID0gZXF1YWxMZXR0ZXJz
SWdub3JpbmdBU0NJSUNhc2UoY3Jvc3NPcmlnaW5Nb2RlLCAidXNlLWNyZWRlbnRpYWxzIikgPyBB
bGxvd1N0b3JlZENyZWRlbnRpYWxzIDogRG9Ob3RBbGxvd1N0b3JlZENyZWRlbnRpYWxzOwotICAg
ICAgICAgICAgdXBkYXRlUmVxdWVzdEZvckFjY2Vzc0NvbnRyb2wocmVxdWVzdC5tdXRhYmxlUmVz
b3VyY2VSZXF1ZXN0KCksIGRvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCksIGFsbG93Q3JlZGVudGlh
bHMpOworICAgICAgICAgICAgQVNTRVJUKGRvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCkpOworICAg
ICAgICAgICAgdXBkYXRlUmVxdWVzdEZvckFjY2Vzc0NvbnRyb2wocmVxdWVzdC5tdXRhYmxlUmVz
b3VyY2VSZXF1ZXN0KCksICpkb2N1bWVudC5zZWN1cml0eU9yaWdpbigpLCBhbGxvd0NyZWRlbnRp
YWxzKTsKICAgICAgICAgfQogCiAgICAgICAgIGlmIChtX2xvYWRNYW51YWxseSkgewpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0xpbmtMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0xpbmtMb2FkZXIuY3BwCmluZGV4IGJlNDAzMWUwYWEzOGFlOTA2ZjRjY2MyYmVj
NjAxYzhmZjcxODdiZjIuLjg0ODE4ZWIyMzg1MjJmMTRlMmZlNmY3NjgxN2ZlZjhkMTQwZjVhM2Eg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9MaW5rTG9hZGVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvTGlua0xvYWRlci5jcHAKQEAgLTEyOCw4ICsxMjgsOSBAQCBz
dGF0aWMgdm9pZCBwcmVsb2FkSWZOZWVkZWQoY29uc3QgTGlua1JlbEF0dHJpYnV0ZSYgcmVsQXR0
cmlidXRlLCBjb25zdCBVUkwmIGhyZQogICAgIGxpbmtSZXF1ZXN0LnNldEluaXRpYXRvcigibGlu
ayIpOwogCiAgICAgaWYgKCFjcm9zc09yaWdpbk1vZGUuaXNOdWxsKCkpIHsKKyAgICAgICAgQVNT
RVJUKGRvY3VtZW50LnNlY3VyaXR5T3JpZ2luKCkpOwogICAgICAgICBTdG9yZWRDcmVkZW50aWFs
cyBhbGxvd0NyZWRlbnRpYWxzID0gZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UoY3Jvc3NP
cmlnaW5Nb2RlLCAidXNlLWNyZWRlbnRpYWxzIikgPyBBbGxvd1N0b3JlZENyZWRlbnRpYWxzIDog
RG9Ob3RBbGxvd1N0b3JlZENyZWRlbnRpYWxzOwotICAgICAgICB1cGRhdGVSZXF1ZXN0Rm9yQWNj
ZXNzQ29udHJvbChsaW5rUmVxdWVzdC5tdXRhYmxlUmVzb3VyY2VSZXF1ZXN0KCksIGRvY3VtZW50
LnNlY3VyaXR5T3JpZ2luKCksIGFsbG93Q3JlZGVudGlhbHMpOworICAgICAgICB1cGRhdGVSZXF1
ZXN0Rm9yQWNjZXNzQ29udHJvbChsaW5rUmVxdWVzdC5tdXRhYmxlUmVzb3VyY2VSZXF1ZXN0KCks
ICpkb2N1bWVudC5zZWN1cml0eU9yaWdpbigpLCBhbGxvd0NyZWRlbnRpYWxzKTsKICAgICB9CiAg
ICAgbGlua1JlcXVlc3Quc2V0Rm9yUHJlbG9hZCh0cnVlKTsKICAgICBkb2N1bWVudC5jYWNoZWRS
ZXNvdXJjZUxvYWRlcigpLnByZWxvYWQodHlwZS52YWx1ZSgpLCBsaW5rUmVxdWVzdCwgZW1wdHlT
dHJpbmcoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTWVkaWFSZXNvdXJj
ZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTWVkaWFSZXNvdXJjZUxvYWRlci5j
cHAKaW5kZXggMjNiNGZhZmQ1ZDRmYTE0ZDcxZWE0YWY2MWNiZTMzM2M0YWEwYjRhMC4uZWM1ZmM0
YmNiNGM5MWI4ODFhNDdhOWY5OThmZTZjMzkyNWFlZWQxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL01lZGlhUmVzb3VyY2VMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9NZWRpYVJlc291cmNlTG9hZGVyLmNwcApAQCAtODAsOSArODAsMTAgQEAgUmVmUHRy
PFBsYXRmb3JtTWVkaWFSZXNvdXJjZT4gTWVkaWFSZXNvdXJjZUxvYWRlcjo6cmVxdWVzdFJlc291
cmNlKGNvbnN0IFJlc291cmMKICAgICAvLyBpcyBpbiBhIHVzZXItYWdlbnQgc2hhZG93IHRyZWUu
IFNlZSA8aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1NTUwNT4uCiAg
ICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IGNhY2hlUmVxdWVzdCh1cGRhdGVkUmVxdWVzdCwgUmVz
b3VyY2VMb2FkZXJPcHRpb25zKFNlbmRDYWxsYmFja3MsIERvTm90U25pZmZDb250ZW50LCBidWZm
ZXJpbmdQb2xpY3ksIGFsbG93Q3JlZGVudGlhbHMsIEFza0NsaWVudEZvckFsbENyZWRlbnRpYWxz
LCBDbGllbnREaWROb3RSZXF1ZXN0Q3JlZGVudGlhbHMsIERvU2VjdXJpdHlDaGVjaywgY29yc1Bv
bGljeSwgRG9Ob3RJbmNsdWRlQ2VydGlmaWNhdGVJbmZvLCBDb250ZW50U2VjdXJpdHlQb2xpY3lJ
bXBvc2l0aW9uOjpEb1BvbGljeUNoZWNrLCBEZWZlcnNMb2FkaW5nUG9saWN5OjpBbGxvd0RlZmVy
c0xvYWRpbmcsIGNhY2hpbmdQb2xpY3kpKTsKIAotICAgIGlmICghbV9jcm9zc09yaWdpbk1vZGUu
aXNOdWxsKCkpCi0gICAgICAgIHVwZGF0ZVJlcXVlc3RGb3JBY2Nlc3NDb250cm9sKGNhY2hlUmVx
dWVzdC5tdXRhYmxlUmVzb3VyY2VSZXF1ZXN0KCksIG1fZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2lu
KCksIGFsbG93Q3JlZGVudGlhbHMpOwotCisgICAgaWYgKCFtX2Nyb3NzT3JpZ2luTW9kZS5pc051
bGwoKSkgeworICAgICAgICBBU1NFUlQobV9kb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKSk7Cisg
ICAgICAgIHVwZGF0ZVJlcXVlc3RGb3JBY2Nlc3NDb250cm9sKGNhY2hlUmVxdWVzdC5tdXRhYmxl
UmVzb3VyY2VSZXF1ZXN0KCksICptX2RvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLCBhbGxvd0Ny
ZWRlbnRpYWxzKTsKKyAgICB9CiAgICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmF3UmVz
b3VyY2U+IHJlc291cmNlID0gbV9kb2N1bWVudC0+Y2FjaGVkUmVzb3VyY2VMb2FkZXIoKS5yZXF1
ZXN0TWVkaWEoY2FjaGVSZXF1ZXN0KTsKICAgICBpZiAoIXJlc291cmNlKQogICAgICAgICByZXR1
cm4gbnVsbHB0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJj
ZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3Bw
CmluZGV4IDM4NmVjMDczYjdkZGNmN2MxNmJjZDVjNGViYzQ0MDRkMzQwZjQ2ODIuLmQ0ZjdlZTAx
ZjU1YmY2MmY3MDliNzc5YWIwZWU2ZmMzMDJmMjIxMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcApAQCAtNDAzLDcgKzQwMyw3IEBAIGJvb2wgU3VicmVz
b3VyY2VMb2FkZXI6OmNoZWNrQ3Jvc3NPcmlnaW5BY2Nlc3NDb250cm9sKGNvbnN0IFJlc291cmNl
UmVxdWVzdCYgcHJlCiAKICAgICBTdHJpbmcgZXJyb3JEZXNjcmlwdGlvbjsKICAgICBib29sIHJl
c3BvbnNlUGFzc2VzQ09SUyA9IG1fb3JpZ2luLT5jYW5SZXF1ZXN0KHByZXZpb3VzUmVxdWVzdC51
cmwoKSkKLSAgICAgICAgfHwgcGFzc2VzQWNjZXNzQ29udHJvbENoZWNrKHJlZGlyZWN0UmVzcG9u
c2UsIG9wdGlvbnMoKS5hbGxvd0NyZWRlbnRpYWxzKCksIG1fb3JpZ2luLmdldCgpLCBlcnJvckRl
c2NyaXB0aW9uKTsKKyAgICAgICAgfHwgcGFzc2VzQWNjZXNzQ29udHJvbENoZWNrKHJlZGlyZWN0
UmVzcG9uc2UsIG9wdGlvbnMoKS5hbGxvd0NyZWRlbnRpYWxzKCksICptX29yaWdpbiwgZXJyb3JE
ZXNjcmlwdGlvbik7CiAgICAgaWYgKCFyZXNwb25zZVBhc3Nlc0NPUlMgfHwgIWlzVmFsaWRDcm9z
c09yaWdpblJlZGlyZWN0aW9uVVJMKG5ld1JlcXVlc3QudXJsKCkpKSB7CiAgICAgICAgIGlmICht
X2ZyYW1lICYmIG1fZnJhbWUtPmRvY3VtZW50KCkpIHsKICAgICAgICAgICAgIFN0cmluZyBlcnJv
ck1lc3NhZ2UgPSAiQ3Jvc3Mtb3JpZ2luIHJlZGlyZWN0aW9uIGRlbmllZCBieSBDcm9zcy1Pcmln
aW4gUmVzb3VyY2UgU2hhcmluZyBwb2xpY3k6ICIgKwpAQCAtNDE2LDcgKzQxNiw3IEBAIGJvb2wg
U3VicmVzb3VyY2VMb2FkZXI6OmNoZWNrQ3Jvc3NPcmlnaW5BY2Nlc3NDb250cm9sKGNvbnN0IFJl
c291cmNlUmVxdWVzdCYgcHJlCiAgICAgLy8gSWYgdGhlIHJlcXVlc3QgVVJMIG9yaWdpbiBpcyBu
b3QgdGhlIHNhbWUgYXMgdGhlIG9yaWdpbmFsIG9yaWdpbiwgdGhlIHJlcXVlc3Qgb3JpZ2luIHNo
b3VsZCBiZSBzZXQgdG8gYSBnbG9iYWxseSB1bmlxdWUgaWRlbnRpZmllci4KICAgICBtX29yaWdp
biA9IFNlY3VyaXR5T3JpZ2luOjpjcmVhdGVVbmlxdWUoKTsKICAgICBjbGVhblJlZGlyZWN0ZWRS
ZXF1ZXN0Rm9yQWNjZXNzQ29udHJvbChuZXdSZXF1ZXN0KTsKLSAgICB1cGRhdGVSZXF1ZXN0Rm9y
QWNjZXNzQ29udHJvbChuZXdSZXF1ZXN0LCBtX29yaWdpbi5nZXQoKSwgb3B0aW9ucygpLmFsbG93
Q3JlZGVudGlhbHMoKSk7CisgICAgdXBkYXRlUmVxdWVzdEZvckFjY2Vzc0NvbnRyb2wobmV3UmVx
dWVzdCwgKm1fb3JpZ2luLCBvcHRpb25zKCkuYWxsb3dDcmVkZW50aWFscygpKTsKIAogICAgIHJl
dHVybiB0cnVlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1RleHRUcmFj
a0xvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvVGV4dFRyYWNrTG9hZGVyLmNwcApp
bmRleCBlMzBjYWUyZTQyOTJjNjIxNWM4ODZjODdjY2VlNDYwZDY2YzM1NWI1Li42YzBlNTlmNjI5
MzRlZjRjMDI4OGM4NWRiYzQwMWY1YjhlNTk3MzIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvVGV4dFRyYWNrTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
VGV4dFRyYWNrTG9hZGVyLmNwcApAQCAtMTYwLDcgKzE2MCw3IEBAIGJvb2wgVGV4dFRyYWNrTG9h
ZGVyOjpsb2FkKGNvbnN0IFVSTCYgdXJsLCBjb25zdCBTdHJpbmcmIGNyb3NzT3JpZ2luTW9kZSwg
Ym9vbCBpCiAgICAgaWYgKCFjcm9zc09yaWdpbk1vZGUuaXNOdWxsKCkpIHsKICAgICAgICAgbV9j
cm9zc09yaWdpbk1vZGUgPSBjcm9zc09yaWdpbk1vZGU7CiAgICAgICAgIFN0b3JlZENyZWRlbnRp
YWxzIGFsbG93Q3JlZGVudGlhbHMgPSBlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShjcm9z
c09yaWdpbk1vZGUsICJ1c2UtY3JlZGVudGlhbHMiKSA/IEFsbG93U3RvcmVkQ3JlZGVudGlhbHMg
OiBEb05vdEFsbG93U3RvcmVkQ3JlZGVudGlhbHM7Ci0gICAgICAgIHVwZGF0ZVJlcXVlc3RGb3JB
Y2Nlc3NDb250cm9sKGN1ZVJlcXVlc3QubXV0YWJsZVJlc291cmNlUmVxdWVzdCgpLCBkb2N1bWVu
dC0+c2VjdXJpdHlPcmlnaW4oKSwgYWxsb3dDcmVkZW50aWFscyk7CisgICAgICAgIHVwZGF0ZVJl
cXVlc3RGb3JBY2Nlc3NDb250cm9sKGN1ZVJlcXVlc3QubXV0YWJsZVJlc291cmNlUmVxdWVzdCgp
LCAqZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCksIGFsbG93Q3JlZGVudGlhbHMpOwogICAgIH0g
ZWxzZSB7CiAgICAgICAgIC8vIENyb3NzLW9yaWdpbiByZXNvdXJjZXMgdGhhdCBhcmUgbm90IHN1
aXRhYmx5IENPUlMtZW5hYmxlZCBtYXkgbm90IGxvYWQuCiAgICAgICAgIGlmICghZG9jdW1lbnQt
PnNlY3VyaXR5T3JpZ2luKCktPmNhblJlcXVlc3QodXJsKSkgewpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKaW5kZXggMjFlYTgxNDIxOTQ5NTg5NjBi
NDdhZTc4ZTVmYjMxYTllMjIxYzNjNi4uOGRmN2Q1ZWJkNTYzNTZiZTY2OTM3NGM2NzY1OWJhMTNl
YTk5NmQ1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJl
c291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3Vy
Y2UuY3BwCkBAIC0zNTIsNyArMzUyLDcgQEAgdm9pZCBDYWNoZWRSZXNvdXJjZTo6ZmluaXNoKCkK
IGJvb2wgQ2FjaGVkUmVzb3VyY2U6OnBhc3Nlc0FjY2Vzc0NvbnRyb2xDaGVjayhTZWN1cml0eU9y
aWdpbiYgc2VjdXJpdHlPcmlnaW4pCiB7CiAgICAgU3RyaW5nIGVycm9yRGVzY3JpcHRpb247Ci0g
ICAgcmV0dXJuIFdlYkNvcmU6OnBhc3Nlc0FjY2Vzc0NvbnRyb2xDaGVjayhyZXNwb25zZSgpLCBy
ZXNvdXJjZVJlcXVlc3QoKS5hbGxvd0Nvb2tpZXMoKSA/IEFsbG93U3RvcmVkQ3JlZGVudGlhbHMg
OiBEb05vdEFsbG93U3RvcmVkQ3JlZGVudGlhbHMsICZzZWN1cml0eU9yaWdpbiwgZXJyb3JEZXNj
cmlwdGlvbik7CisgICAgcmV0dXJuIFdlYkNvcmU6OnBhc3Nlc0FjY2Vzc0NvbnRyb2xDaGVjayhy
ZXNwb25zZSgpLCByZXNvdXJjZVJlcXVlc3QoKS5hbGxvd0Nvb2tpZXMoKSA/IEFsbG93U3RvcmVk
Q3JlZGVudGlhbHMgOiBEb05vdEFsbG93U3RvcmVkQ3JlZGVudGlhbHMsIHNlY3VyaXR5T3JpZ2lu
LCBlcnJvckRlc2NyaXB0aW9uKTsKIH0KIAogYm9vbCBDYWNoZWRSZXNvdXJjZTo6cGFzc2VzU2Ft
ZU9yaWdpblBvbGljeUNoZWNrKFNlY3VyaXR5T3JpZ2luJiBzZWN1cml0eU9yaWdpbikKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZVJlcXVlc3Qu
Y3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5j
cHAKaW5kZXggMjQ1ODg2NWU4ZGMxNDZlM2Q2NmNjNjBjZmZlMDczMGQ4ZDRlMTE1ZS4uMWQyNTVi
Y2ZkNmIyZTk1NzFhNDBhNDNhOTE1YTEyOWMwOGQ4M2FlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlUmVxdWVzdC5jcHAKQEAgLTEwMCw3
ICsxMDAsOCBAQCB2b2lkIENhY2hlZFJlc291cmNlUmVxdWVzdDo6c2V0QXNQb3RlbnRpYWxseUNy
b3NzT3JpZ2luKGNvbnN0IFN0cmluZyYgbW9kZSwgRG9jdQogICAgIG1fb3B0aW9ucy5zZXRSZXF1
ZXN0T3JpZ2luUG9saWN5KFBvdGVudGlhbGx5Q3Jvc3NPcmlnaW5FbmFibGVkKTsKICAgICBtX29w
dGlvbnMuc2V0QWxsb3dDcmVkZW50aWFscyhlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZSht
b2RlLCAidXNlLWNyZWRlbnRpYWxzIikgPyBBbGxvd1N0b3JlZENyZWRlbnRpYWxzIDogRG9Ob3RB
bGxvd1N0b3JlZENyZWRlbnRpYWxzKTsKIAotICAgIHVwZGF0ZVJlcXVlc3RGb3JBY2Nlc3NDb250
cm9sKG1fcmVzb3VyY2VSZXF1ZXN0LCBkb2N1bWVudC5zZWN1cml0eU9yaWdpbigpLCBtX29wdGlv
bnMuYWxsb3dDcmVkZW50aWFscygpKTsKKyAgICBBU1NFUlQoZG9jdW1lbnQuc2VjdXJpdHlPcmln
aW4oKSk7CisgICAgdXBkYXRlUmVxdWVzdEZvckFjY2Vzc0NvbnRyb2wobV9yZXNvdXJjZVJlcXVl
c3QsICpkb2N1bWVudC5zZWN1cml0eU9yaWdpbigpLCBtX29wdGlvbnMuYWxsb3dDcmVkZW50aWFs
cygpKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>