<?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>205092</bug_id>
          
          <creation_ts>2019-12-10 16:48:47 -0800</creation_ts>
          <short_desc>[Bindings] Cross-origin checks happen too late for overloaded methods</short_desc>
          <delta_ts>2019-12-11 11:06:21 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Bindings</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>https://heycam.github.io/webidl/#dfn-create-operation-function</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>205120</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1597414</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-12-10 16:48:47 -0800</bug_when>
    <thetext>Cross-origin checks happen too late for overloaded methods. We&apos;re supposed to do the security check and then find the right overload to call [1]. In our bindings, we first find the right overload body to call and then do the security check in the body of the chosen overload. This results in the wrong exception being thrown in some cases.

[1] https://heycam.github.io/webidl/#dfn-create-operation-function</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1597418</commentid>
    <comment_count>1</comment_count>
      <attachid>385317</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-12-10 16:51:48 -0800</bug_when>
    <thetext>Created attachment 385317
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1597469</commentid>
    <comment_count>2</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2019-12-10 18:08:25 -0800</bug_when>
    <thetext>Nice catch. Do the bindings tests (run-bindings-tests) output change?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1597470</commentid>
    <comment_count>3</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-12-10 18:15:20 -0800</bug_when>
    <thetext>(In reply to Sam Weinig from comment #2)
&gt; Nice catch. Do the bindings tests (run-bindings-tests) output change?

They do not, the bindings bubble is green.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1597475</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-12-10 18:21:25 -0800</bug_when>
    <thetext>(In reply to Chris Dumez from comment #3)
&gt; (In reply to Sam Weinig from comment #2)
&gt; &gt; Nice catch. Do the bindings tests (run-bindings-tests) output change?
&gt; 
&gt; They do not, the bindings bubble is green.

Will look into adding test coverage. Looks like there is an EWS failure to investigate too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1597476</commentid>
    <comment_count>5</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2019-12-10 18:22:12 -0800</bug_when>
    <thetext>(In reply to Chris Dumez from comment #3)
&gt; (In reply to Sam Weinig from comment #2)
&gt; &gt; Nice catch. Do the bindings tests (run-bindings-tests) output change?
&gt; 
&gt; They do not, the bindings bubble is green.

In that case, mind adding an overload that triggers this to the bindings tests? Seeing the new generated code can help make the reviewing easier (and more tests seem good).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1597477</commentid>
    <comment_count>6</comment_count>
      <attachid>385335</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-12-10 18:29:33 -0800</bug_when>
    <thetext>Created attachment 385335
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1597694</commentid>
    <comment_count>7</comment_count>
      <attachid>385335</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-12-11 11:05:12 -0800</bug_when>
    <thetext>Comment on attachment 385335
Patch

Clearing flags on attachment: 385335

Committed r253381: &lt;https://trac.webkit.org/changeset/253381&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1597695</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-12-11 11:05:13 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1597696</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-12-11 11:06:21 -0800</bug_when>
    <thetext>&lt;rdar://problem/57844610&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>385317</attachid>
            <date>2019-12-10 16:51:48 -0800</date>
            <delta_ts>2019-12-10 18:29:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-205092-20191210165148.patch</filename>
            <type>text/plain</type>
            <size>15862</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUzMzUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWRiOWZkZDcwZDhmYTcy
NTMyNDFjNDFmMmNjYzIwOTNkZDE4NWVmYS4uMmJmYmJiMGJiNDBkMzRlYmYwNTEwYWJmY2VhZDRh
NThjODBmM2IzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE5LTEyLTEwICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgW0JpbmRpbmdzXSBDcm9zcy1v
cmlnaW4gY2hlY2tzIGhhcHBlbiB0b28gbGF0ZSBmb3Igb3ZlcmxvYWRlZCBtZXRob2RzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDUwOTIKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDcm9zcy1vcmlnaW4g
Y2hlY2tzIGhhcHBlbiB0b28gbGF0ZSBmb3Igb3ZlcmxvYWRlZCBtZXRob2RzLiBXZSdyZSBzdXBw
b3NlZCB0byBkbyB0aGUgc2VjdXJpdHkgY2hlY2sKKyAgICAgICAgYW5kIHRoZW4gZmluZCB0aGUg
cmlnaHQgb3ZlcmxvYWQgdG8gY2FsbCBbMV0uIEluIG91ciBiaW5kaW5ncywgd2UgZmlyc3QgZmlu
ZCB0aGUgcmlnaHQgb3ZlcmxvYWQgYm9keQorICAgICAgICB0byBjYWxsIGFuZCB0aGVuIGRvIHRo
ZSBzZWN1cml0eSBjaGVjayBpbiB0aGUgYm9keSBvZiB0aGUgY2hvc2VuIG92ZXJsb2FkLiBUaGlz
IHJlc3VsdHMgaW4gdGhlIHdyb25nCisgICAgICAgIGV4Y2VwdGlvbiBiZWluZyB0aHJvd24gaW4g
c29tZSBjYXNlcyAoVHlwZUVycm9yIGR1ZSB0byBtaXNzaW5nIGFyZ3VtZW50cyBpbnN0ZWFkIG9m
IGEgU2VjdXJpdHlFcnJvcikuCisKKyAgICAgICAgWzFdIGh0dHBzOi8vaGV5Y2FtLmdpdGh1Yi5p
by93ZWJpZGwvI2Rmbi1jcmVhdGUtb3BlcmF0aW9uLWZ1bmN0aW9uCisKKyAgICAgICAgTm8gbmV3
IHRlc3RzLCB1cGRhdGVkIGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChHZW5lcmF0ZU9wZXJhdGlvbkJvZHlE
ZWZpbml0aW9uKToKKyAgICAgICAgKEdlbmVyYXRlT3BlcmF0aW9uRGVmaW5pdGlvbik6CisKIDIw
MTktMTItMTAgIENvbW1pdCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgogCiAgICAg
ICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyNTMzMjEuCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbSBiL1NvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCmluZGV4IDJmYzQ2NmU3N2I3
ZjU2MWE1ZWY1OTA1NmNjMWU0MmY0YjMxZmIyMWEuLmVmYTM0YTE3NWI5MzMwNmY4NDlmM2E4MTgy
NjJkNzM5MzI3NjkzZTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvQ29kZUdlbmVyYXRvckpTLnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvQ29kZUdlbmVyYXRvckpTLnBtCkBAIC01MjIyLDcgKzUyMjIsNyBAQCBzdWIgR2VuZXJhdGVP
cGVyYXRpb25UcmFtcG9saW5lRGVmaW5pdGlvbgogCiBzdWIgR2VuZXJhdGVPcGVyYXRpb25Cb2R5
RGVmaW5pdGlvbgogewotICAgIG15ICgkb3V0cHV0QXJyYXksICRpbnRlcmZhY2UsICRjbGFzc05h
bWUsICRvcGVyYXRpb24sICRmdW5jdGlvbk5hbWUsICRmdW5jdGlvbkltcGxlbWVudGF0aW9uTmFt
ZSwgJGZ1bmN0aW9uQm9keU5hbWUsICRnZW5lcmF0aW5nT3ZlcmxvYWREaXNwYXRjaGVyKSA9IEBf
OworICAgIG15ICgkb3V0cHV0QXJyYXksICRpbnRlcmZhY2UsICRjbGFzc05hbWUsICRvcGVyYXRp
b24sICRmdW5jdGlvbk5hbWUsICRmdW5jdGlvbkltcGxlbWVudGF0aW9uTmFtZSwgJGZ1bmN0aW9u
Qm9keU5hbWUsICRpc092ZXJsb2FkZWQsICRnZW5lcmF0aW5nT3ZlcmxvYWREaXNwYXRjaGVyKSA9
IEBfOwogCiAgICAgbXkgJGhhc1Byb21pc2VSZXR1cm5UeXBlID0gJGNvZGVHZW5lcmF0b3ItPklz
UHJvbWlzZVR5cGUoJG9wZXJhdGlvbi0+dHlwZSk7CiAgICAgbXkgJGlkbE9wZXJhdGlvblR5cGUg
PSAkaGFzUHJvbWlzZVJldHVyblR5cGUgPyAiSURMT3BlcmF0aW9uUmV0dXJuaW5nUHJvbWlzZSIg
OiAiSURMT3BlcmF0aW9uIjsKQEAgLTUyNDEsNyArNTI0MSw5IEBAIHN1YiBHZW5lcmF0ZU9wZXJh
dGlvbkJvZHlEZWZpbml0aW9uCiAgICAgcHVzaChAJG91dHB1dEFycmF5LCAiICAgIFVOVVNFRF9Q
QVJBTShjYWxsRnJhbWUpO1xuIik7CiAgICAgcHVzaChAJG91dHB1dEFycmF5LCAiICAgIFVOVVNF
RF9QQVJBTSh0aHJvd1Njb3BlKTtcbiIpOwogCi0gICAgaWYgKCEkZ2VuZXJhdGluZ092ZXJsb2Fk
RGlzcGF0Y2hlcikgeworICAgICMgRm9yIG92ZXJsb2Fkcywgd2UgZ2VuZXJhdGUgdGhlIHNlY3Vy
aXR5IGNoZWNrIGluIHRoZSBvdmVybG9hZCBkaXNwYXRjaGVyLCBpbnN0ZWFkIG9mIHRoZSBib2R5
IG9mIGVhY2ggb3ZlcmxvYWQsIGFzIHBlciBzcGVjaWZpY2F0aW9uOgorICAgICMgaHR0cHM6Ly9o
ZXljYW0uZ2l0aHViLmlvL3dlYmlkbC8jZGZuLWNyZWF0ZS1vcGVyYXRpb24tZnVuY3Rpb24KKyAg
ICBpZiAoISRpc092ZXJsb2FkZWQgfHwgJGdlbmVyYXRpbmdPdmVybG9hZERpc3BhdGNoZXIpIHsK
ICAgICAgICAgR2VuZXJhdGVDdXN0b21FbGVtZW50UmVhY3Rpb25zU3RhY2tJZk5lZWRlZCgkb3V0
cHV0QXJyYXksICRvcGVyYXRpb24sICIqbGV4aWNhbEdsb2JhbE9iamVjdCIpOwogCiAgICAgICAg
IGlmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntDaGVja1NlY3VyaXR5fSBhbmQg
ISRvcGVyYXRpb24tPmV4dGVuZGVkQXR0cmlidXRlcy0+e0RvTm90Q2hlY2tTZWN1cml0eX0pIHsK
QEAgLTUzMzUsNyArNTMzNyw3IEBAIHN1YiBHZW5lcmF0ZU9wZXJhdGlvbkRlZmluaXRpb24KICAg
ICBteSAkZnVuY3Rpb25JbXBsZW1lbnRhdGlvbk5hbWUgPSAkb3BlcmF0aW9uLT5leHRlbmRlZEF0
dHJpYnV0ZXMtPntJbXBsZW1lbnRlZEFzfSB8fCAkY29kZUdlbmVyYXRvci0+V0tfbGNmaXJzdCgk
b3BlcmF0aW9uLT5uYW1lKTsKICAgICBteSAkZnVuY3Rpb25Cb2R5TmFtZSA9ICgkaXNPdmVybG9h
ZGVkID8gJGZ1bmN0aW9uTmFtZSAuICRvcGVyYXRpb24tPntvdmVybG9hZEluZGV4fSA6ICRmdW5j
dGlvbk5hbWUpIC4gIkJvZHkiOwogCi0gICAgR2VuZXJhdGVPcGVyYXRpb25Cb2R5RGVmaW5pdGlv
bigkb3V0cHV0QXJyYXksICRpbnRlcmZhY2UsICRjbGFzc05hbWUsICRvcGVyYXRpb24sICRmdW5j
dGlvbk5hbWUsICRmdW5jdGlvbkltcGxlbWVudGF0aW9uTmFtZSwgJGZ1bmN0aW9uQm9keU5hbWUp
OworICAgIEdlbmVyYXRlT3BlcmF0aW9uQm9keURlZmluaXRpb24oJG91dHB1dEFycmF5LCAkaW50
ZXJmYWNlLCAkY2xhc3NOYW1lLCAkb3BlcmF0aW9uLCAkZnVuY3Rpb25OYW1lLCAkZnVuY3Rpb25J
bXBsZW1lbnRhdGlvbk5hbWUsICRmdW5jdGlvbkJvZHlOYW1lLCAkaXNPdmVybG9hZGVkKTsKIAog
ICAgICMgT3ZlcmxvYWRlZCBvcGVyYXRpb25zIGRvbid0IGdlbmVyYXRlIGEgdHJhbXBvbGluZSBm
b3IgZWFjaCBvdmVybG9hZCwgYW5kIGluc3RlYWQgaGF2ZSBhIHNpbmdsZSBkaXNwYXRjaCB0cmFt
cG9saW5lCiAgICAgIyB0aGF0IGdldHMgZ2VuZXJhdGVkIGFmdGVyIHRoZSBsYXN0IG92ZXJsb2Fk
IGJvZHkgaGFzIGJlZW4gZ2VuZXJhdGVkLgpAQCAtNTM1Miw3ICs1MzU0LDcgQEAgc3ViIEdlbmVy
YXRlT3BlcmF0aW9uRGVmaW5pdGlvbgogICAgICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIjaWYg
JHtvdmVybG9hZHNDb25kaXRpb25hbFN0cmluZ31cblxuIikgaWYgJG92ZXJsb2Fkc0NvbmRpdGlv
bmFsU3RyaW5nOwogCiAgICAgICAgIG15ICRvdmVybG9hZERpc3BhdGNoZXJGdW5jdGlvbkJvZHlO
YW1lID0gJGZ1bmN0aW9uTmFtZSAuICJPdmVybG9hZERpc3BhdGNoZXIiOwotICAgICAgICBHZW5l
cmF0ZU9wZXJhdGlvbkJvZHlEZWZpbml0aW9uKCRvdXRwdXRBcnJheSwgJGludGVyZmFjZSwgJGNs
YXNzTmFtZSwgJG9wZXJhdGlvbiwgJGZ1bmN0aW9uTmFtZSwgJGZ1bmN0aW9uSW1wbGVtZW50YXRp
b25OYW1lLCAkb3ZlcmxvYWREaXNwYXRjaGVyRnVuY3Rpb25Cb2R5TmFtZSwgMSk7CisgICAgICAg
IEdlbmVyYXRlT3BlcmF0aW9uQm9keURlZmluaXRpb24oJG91dHB1dEFycmF5LCAkaW50ZXJmYWNl
LCAkY2xhc3NOYW1lLCAkb3BlcmF0aW9uLCAkZnVuY3Rpb25OYW1lLCAkZnVuY3Rpb25JbXBsZW1l
bnRhdGlvbk5hbWUsICRvdmVybG9hZERpc3BhdGNoZXJGdW5jdGlvbkJvZHlOYW1lLCAkaXNPdmVy
bG9hZGVkLCAxKTsKICAgICAgICAgR2VuZXJhdGVPcGVyYXRpb25UcmFtcG9saW5lRGVmaW5pdGlv
bigkb3V0cHV0QXJyYXksICRpbnRlcmZhY2UsICRjbGFzc05hbWUsICRvcGVyYXRpb24sICRmdW5j
dGlvbk5hbWUsICRvdmVybG9hZERpc3BhdGNoZXJGdW5jdGlvbkJvZHlOYW1lKTsKICAgICAKICAg
ICAgICAgcHVzaChAJG91dHB1dEFycmF5LCAiI2VuZGlmXG5cbiIpIGlmICRvdmVybG9hZHNDb25k
aXRpb25hbFN0cmluZzsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwppbmRleCAyMWI1NDFkZTgzNjVkMWM5MDBhZWI4ZTM0ODdkOGE1ZWQ4
MmVlNzliLi4yYzIzM2I2Y2E1ZGI4MWY3MzRlNDZhZTc4ZjJmMzhmMzNiNTRjZDA0IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMTktMTItMTAgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNv
bT4KKworICAgICAgICBbQmluZGluZ3NdIENyb3NzLW9yaWdpbiBjaGVja3MgaGFwcGVuIHRvbyBs
YXRlIGZvciBvdmVybG9hZGVkIG1ldGhvZHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIwNTA5MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEV4dGVuZCBsYXlvdXQgdGVzdCBjb3ZlcmFnZS4KKworICAgICAg
ICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3Mtb3JpZ2luLXdpbmRvdy1wcm9wZXJ0eS1hY2Nl
c3MtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGh0dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3Mtb3Jp
Z2luLXdpbmRvdy1wcm9wZXJ0eS1hY2Nlc3MuaHRtbDoKKwogMjAxOS0xMi0xMCAgeW91ZW5uIGZh
YmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgTWFyayBzb21lIFdQVCB0ZXN0IGZv
bGRlcnMgYXMgRHVtcEpTQ29uc29sZUxvZ0luU3RkRXJyCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5n
ZUxvZwppbmRleCA0N2ZkNWUxYTU0NzhkZTU2MDlkMzI5MTljMzY3ZjgwYjZkODE2Njg0Li5hNTUx
YzIwMDEwZDk2NzM3NDc3ZWU1ODIzYWY1YzI5NDNkZjBmN2U1IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3cz
Yy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxOS0xMi0xMCAgQ2hyaXMgRHVtZXogIDxj
ZHVtZXpAYXBwbGUuY29tPgorCisgICAgICAgIFtCaW5kaW5nc10gQ3Jvc3Mtb3JpZ2luIGNoZWNr
cyBoYXBwZW4gdG9vIGxhdGUgZm9yIG92ZXJsb2FkZWQgbWV0aG9kcworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA1MDkyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUmViYXNlbGluZSBXUFQgdGVzdCBub3cg
dGhhdCBpdCBpcyBmYWlsaW5nIGEgYml0IGxhdGVyLgorCisgICAgICAgICogd2ViLXBsYXRmb3Jt
LXRlc3RzL2h0bWwvYnJvd3NlcnMvb3JpZ2luL2Nyb3NzLW9yaWdpbi1vYmplY3RzL2Nyb3NzLW9y
aWdpbi1vYmplY3RzLWV4cGVjdGVkLnR4dDoKKwogMjAxOS0xMi0xMCAgQ2hyaXMgRHVtZXogIDxj
ZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFJlLXN5bmMgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2Jyb3dzZXJzL29yaWdpbi9jcm9zcy1vcmlnaW4tb2JqZWN0cy9jcm9z
cy1vcmlnaW4tb2JqZWN0cy5odG1sIGZyb20gdXNwdHJlYW0KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3Mtb3JpZ2luLXdpbmRvdy1wcm9wZXJ0eS1hY2Nl
c3MtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jcm9zcy1v
cmlnaW4td2luZG93LXByb3BlcnR5LWFjY2Vzcy1leHBlY3RlZC50eHQKaW5kZXggZGY3MjM0ZGRk
ZmMwZDI5ZTJkMTM3NzQ0NmI5YTBlY2M0ZTFiM2IxMS4uZGJkM2I3ODQ2MzA4NDExZmY5MzQxNmM1
ZGIxMTljNGU3OGQwNjUwNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1
cml0eS9jcm9zcy1vcmlnaW4td2luZG93LXByb3BlcnR5LWFjY2Vzcy1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jcm9zcy1vcmlnaW4td2luZG93LXBy
b3BlcnR5LWFjY2Vzcy1leHBlY3RlZC50eHQKQEAgLTksNiArOSw4IEBAIFBBU1MgT2JqZWN0Lmdl
dE93blByb3BlcnR5RGVzY3JpcHRvcih3aW5kb3csICJtZW51YmFyIikuZ2V0LmNhbGwoY3Jvc3NP
cmlnaW5XaW5kCiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iod2luZG93LCAi
c2Nyb2xsYmFycyIpLmdldC5jYWxsKGNyb3NzT3JpZ2luV2luZG93KSB0aHJldyBleGNlcHRpb24g
U2VjdXJpdHlFcnJvcjogQmxvY2tlZCBhIGZyYW1lIHdpdGggb3JpZ2luICJodHRwOi8vMTI3LjAu
MC4xOjgwMDAiIGZyb20gYWNjZXNzaW5nIGEgY3Jvc3Mtb3JpZ2luIGZyYW1lLiBQcm90b2NvbHMs
IGRvbWFpbnMsIGFuZCBwb3J0cyBtdXN0IG1hdGNoLi4KIFBBU1MgT2JqZWN0LmdldE93blByb3Bl
cnR5RGVzY3JpcHRvcih3aW5kb3csICJuYXZpZ2F0b3IiKS5nZXQuY2FsbChjcm9zc09yaWdpbldp
bmRvdykgdGhyZXcgZXhjZXB0aW9uIFNlY3VyaXR5RXJyb3I6IEJsb2NrZWQgYSBmcmFtZSB3aXRo
IG9yaWdpbiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwIiBmcm9tIGFjY2Vzc2luZyBhIGNyb3NzLW9y
aWdpbiBmcmFtZS4gUHJvdG9jb2xzLCBkb21haW5zLCBhbmQgcG9ydHMgbXVzdCBtYXRjaC4uCiBQ
QVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iod2luZG93LCAic2NyZWVuWCIpLmdl
dC5jYWxsKGNyb3NzT3JpZ2luV2luZG93KSB0aHJldyBleGNlcHRpb24gU2VjdXJpdHlFcnJvcjog
QmxvY2tlZCBhIGZyYW1lIHdpdGggb3JpZ2luICJodHRwOi8vMTI3LjAuMC4xOjgwMDAiIGZyb20g
YWNjZXNzaW5nIGEgY3Jvc3Mtb3JpZ2luIGZyYW1lLiBQcm90b2NvbHMsIGRvbWFpbnMsIGFuZCBw
b3J0cyBtdXN0IG1hdGNoLi4KK1BBU1MgQ2FsbGluZyBjcmVhdGVJbWFnZUJpdG1hcCByZWplY3Rl
ZCBwcm9taXNlIHdpdGggZXhjZXB0aW9uIFNlY3VyaXR5RXJyb3IuCitQQVNTIENhbGxpbmcgZmV0
Y2ggcmVqZWN0ZWQgcHJvbWlzZSB3aXRoIGV4Y2VwdGlvbiBTZWN1cml0eUVycm9yLgogUEFTUyBP
YmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHdpbmRvdy5fX3Byb3RvX18sICJjb25zdHJ1
Y3RvciIpLmdldC5jYWxsKGNyb3NzT3JpZ2luV2luZG93KSB0aHJldyBleGNlcHRpb24gVHlwZUVy
cm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVhdGluZyAnT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcih3aW5kb3cuX19wcm90b19fLCAiY29uc3RydWN0b3IiKS5nZXQu
Y2FsbCcpLgogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHdpbmRvdy5fX3By
b3RvX18sICJjb25zdHJ1Y3RvciIpLmdldC5jYWxsKGNyb3NzT3JpZ2luV2luZG93Ll9fcHJvdG9f
XykgdGhyZXcgZXhjZXB0aW9uIFR5cGVFcnJvcjogdW5kZWZpbmVkIGlzIG5vdCBhbiBvYmplY3Qg
KGV2YWx1YXRpbmcgJ09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iod2luZG93Ll9fcHJv
dG9fXywgImNvbnN0cnVjdG9yIikuZ2V0LmNhbGwnKS4KIFBBU1MgY3Jvc3NPcmlnaW5XaW5kb3cu
Y29uc3RydWN0b3IgdGhyZXcgZXhjZXB0aW9uIFNlY3VyaXR5RXJyb3I6IEJsb2NrZWQgYSBmcmFt
ZSB3aXRoIG9yaWdpbiAiaHR0cDovLzEyNy4wLjAuMTo4MDAwIiBmcm9tIGFjY2Vzc2luZyBhIGNy
b3NzLW9yaWdpbiBmcmFtZS4gUHJvdG9jb2xzLCBkb21haW5zLCBhbmQgcG9ydHMgbXVzdCBtYXRj
aC4uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLW9y
aWdpbi13aW5kb3ctcHJvcGVydHktYWNjZXNzLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3NlY3VyaXR5L2Nyb3NzLW9yaWdpbi13aW5kb3ctcHJvcGVydHktYWNjZXNzLmh0bWwKaW5kZXgg
Zjc4OTNjMTZmZDBmMzNlYTc0ZGY2NWE4MTFhMDMxZDhjNjFmZDI2OC4uNTdkZjM3NzkwMWZlNWZi
YTEwZTk2NDg0ZGRmOTA5ZTE4MjUwMjdkZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy9zZWN1cml0eS9jcm9zcy1vcmlnaW4td2luZG93LXByb3BlcnR5LWFjY2Vzcy5odG1sCisr
KyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3Mtb3JpZ2luLXdpbmRvdy1w
cm9wZXJ0eS1hY2Nlc3MuaHRtbApAQCAtOSwzMyArOSwzMyBAQAogZGVzY3JpcHRpb24oIlRlc3Rz
IHRoYXQgdXNpbmcgYW5vdGhlciB3aW5kb3cncyBwcm9wZXJ0eSBnZXR0ZXIgZG9lcyBub3QgYnlw
YXNzIGNyb3NzLW9yaWdpbiBjaGVja3MuIik7CiBqc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKIAotZnVu
Y3Rpb24gc2hvdWxkVGhyb3dPclJldHVyblVuZGVmaW5lZChleHByZXNzaW9uKQorZnVuY3Rpb24g
Y2FsbGluZ0Z1bmN0aW9uU2hvdWxkUmVqZWN0UHJvbWlzZVdpdGhFcnJvck5hbWUoZnVuY3Rpb25O
YW1lLCBlcnJvck5hbWUpCiB7Ci0gICAgdHJ5IHsKLSAgICAgICAgcmVzdWx0ID0gZXZhbChleHBy
ZXNzaW9uKTsKLSAgICB9IGNhdGNoIChlKSB7Ci0gICAgICAgIHRlc3RQYXNzZWQoZXhwcmVzc2lv
biArICIgdGhyZXcgZXhjZXB0aW9uICIgKyBlICsgIi4iKTsKLSAgICAgICAgcmV0dXJuOwotICAg
IH0KLSAgICBpZiAocmVzdWx0ID09PSB1bmRlZmluZWQpCi0gICAgICAgIHRlc3RQYXNzZWQoZXhw
cmVzc2lvbiArICIgcmV0dXJuZWQgdW5kZWZpbmVkLiIpOwotICAgIGVsc2UKLSAgICAgICAgdGVz
dEZhaWxlZChleHByZXNzaW9uICsgIiByZXR1cm5lZCAiICsgcmVzdWx0KTsKKyAgICByZXR1cm4g
T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih3aW5kb3csIGZ1bmN0aW9uTmFtZSkudmFs
dWUuY2FsbChjcm9zc09yaWdpbldpbmRvdykudGhlbigoKSA9PiB7CisgICAgICAgIHRlc3RGYWls
ZWQoIkNhbGxpbmcgIiArIGZ1bmN0aW9uTmFtZSArICIgZGlkIG5vdCByZWplY3QgdGhlIHByb21p
c2UiKTsKKyAgICB9LCAoZSkgPT4geworICAgICAgICBpZiAoZS5uYW1lID09IGVycm9yTmFtZSkK
KyAgICAgICAgICAgdGVzdFBhc3NlZCgiQ2FsbGluZyAiICsgZnVuY3Rpb25OYW1lICsgIiByZWpl
Y3RlZCBwcm9taXNlIHdpdGggZXhjZXB0aW9uICIgKyBlcnJvck5hbWUgKyAiLiIpOworICAgICAg
IGVsc2UKKyAgICAgICAgICAgdGVzdEZhaWxlZCgiQ2FsbGluZyAiICsgZnVuY3Rpb25OYW1lICsg
IiBzaG91bGQgcmVqZWN0IHByb21pc2Ugd2l0aCBleGNlcHRpb24gIiArIGVycm9yTmFtZSArICIu
IFJlamVjdGVkIHdpdGggZXhjZXB0aW9uICIgKyBlLm5hbWUgKyAiIGluc3RlYWQuIik7CisgICAg
fSk7CiB9CiAKLWZ1bmN0aW9uIHJ1blRlc3QoKQorYXN5bmMgZnVuY3Rpb24gcnVuVGVzdCgpCiB7
CiAgICAgY3Jvc3NPcmlnaW5XaW5kb3cgPSBmcmFtZXNbMF07Ci0gICAgc2hvdWxkVGhyb3dPclJl
dHVyblVuZGVmaW5lZCgnT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih3aW5kb3csICJk
b2N1bWVudCIpLmdldC5jYWxsKGNyb3NzT3JpZ2luV2luZG93KScpOwotICAgIHNob3VsZFRocm93
T3JSZXR1cm5VbmRlZmluZWQoJ09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iod2luZG93
LCAibmFtZSIpLmdldC5jYWxsKGNyb3NzT3JpZ2luV2luZG93KScpOwotICAgIHNob3VsZFRocm93
T3JSZXR1cm5VbmRlZmluZWQoJ09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iod2luZG93
LCAibWVudWJhciIpLmdldC5jYWxsKGNyb3NzT3JpZ2luV2luZG93KScpOwotICAgIHNob3VsZFRo
cm93T3JSZXR1cm5VbmRlZmluZWQoJ09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iod2lu
ZG93LCAic2Nyb2xsYmFycyIpLmdldC5jYWxsKGNyb3NzT3JpZ2luV2luZG93KScpOwotICAgIHNo
b3VsZFRocm93T3JSZXR1cm5VbmRlZmluZWQoJ09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0
b3Iod2luZG93LCAibmF2aWdhdG9yIikuZ2V0LmNhbGwoY3Jvc3NPcmlnaW5XaW5kb3cpJyk7Ci0g
ICAgc2hvdWxkVGhyb3dPclJldHVyblVuZGVmaW5lZCgnT2JqZWN0LmdldE93blByb3BlcnR5RGVz
Y3JpcHRvcih3aW5kb3csICJzY3JlZW5YIikuZ2V0LmNhbGwoY3Jvc3NPcmlnaW5XaW5kb3cpJyk7
Ci0gICAgc2hvdWxkVGhyb3dPclJldHVyblVuZGVmaW5lZCgnT2JqZWN0LmdldE93blByb3BlcnR5
RGVzY3JpcHRvcih3aW5kb3cuX19wcm90b19fLCAiY29uc3RydWN0b3IiKS5nZXQuY2FsbChjcm9z
c09yaWdpbldpbmRvdyknKTsKLSAgICBzaG91bGRUaHJvd09yUmV0dXJuVW5kZWZpbmVkKCdPYmpl
Y3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHdpbmRvdy5fX3Byb3RvX18sICJjb25zdHJ1Y3Rv
ciIpLmdldC5jYWxsKGNyb3NzT3JpZ2luV2luZG93Ll9fcHJvdG9fXyknKTsKLSAgICBzaG91bGRU
aHJvd09yUmV0dXJuVW5kZWZpbmVkKCdjcm9zc09yaWdpbldpbmRvdy5jb25zdHJ1Y3RvcicpOwot
ICAgIHNob3VsZFRocm93T3JSZXR1cm5VbmRlZmluZWQoJ09iamVjdC5nZXRPd25Qcm9wZXJ0eURl
c2NyaXB0b3IoY3Jvc3NPcmlnaW5XaW5kb3cuX19wcm90b19fLCAiY29uc3RydWN0b3IiKS52YWx1
ZScpOworICAgIHNob3VsZFRocm93RXJyb3JOYW1lKCdPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNj
cmlwdG9yKHdpbmRvdywgImRvY3VtZW50IikuZ2V0LmNhbGwoY3Jvc3NPcmlnaW5XaW5kb3cpJywg
J1NlY3VyaXR5RXJyb3InKTsKKyAgICBzaG91bGRUaHJvd0Vycm9yTmFtZSgnT2JqZWN0LmdldE93
blByb3BlcnR5RGVzY3JpcHRvcih3aW5kb3csICJuYW1lIikuZ2V0LmNhbGwoY3Jvc3NPcmlnaW5X
aW5kb3cpJywgJ1NlY3VyaXR5RXJyb3InKTsKKyAgICBzaG91bGRUaHJvd0Vycm9yTmFtZSgnT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih3aW5kb3csICJtZW51YmFyIikuZ2V0LmNhbGwo
Y3Jvc3NPcmlnaW5XaW5kb3cpJywgJ1NlY3VyaXR5RXJyb3InKTsKKyAgICBzaG91bGRUaHJvd0Vy
cm9yTmFtZSgnT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih3aW5kb3csICJzY3JvbGxi
YXJzIikuZ2V0LmNhbGwoY3Jvc3NPcmlnaW5XaW5kb3cpJywgJ1NlY3VyaXR5RXJyb3InKTsKKyAg
ICBzaG91bGRUaHJvd0Vycm9yTmFtZSgnT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih3
aW5kb3csICJuYXZpZ2F0b3IiKS5nZXQuY2FsbChjcm9zc09yaWdpbldpbmRvdyknLCAnU2VjdXJp
dHlFcnJvcicpOworICAgIHNob3VsZFRocm93RXJyb3JOYW1lKCdPYmplY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKHdpbmRvdywgInNjcmVlblgiKS5nZXQuY2FsbChjcm9zc09yaWdpbldpbmRv
dyknLCAnU2VjdXJpdHlFcnJvcicpOworICAgIGF3YWl0IGNhbGxpbmdGdW5jdGlvblNob3VsZFJl
amVjdFByb21pc2VXaXRoRXJyb3JOYW1lKCdjcmVhdGVJbWFnZUJpdG1hcCcsICdTZWN1cml0eUVy
cm9yJyk7CisgICAgYXdhaXQgY2FsbGluZ0Z1bmN0aW9uU2hvdWxkUmVqZWN0UHJvbWlzZVdpdGhF
cnJvck5hbWUoJ2ZldGNoJywgJ1NlY3VyaXR5RXJyb3InKTsKKyAgICBzaG91bGRUaHJvd0Vycm9y
TmFtZSgnT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih3aW5kb3cuX19wcm90b19fLCAi
Y29uc3RydWN0b3IiKS5nZXQuY2FsbChjcm9zc09yaWdpbldpbmRvdyknLCAnVHlwZUVycm9yJyk7
CisgICAgc2hvdWxkVGhyb3dFcnJvck5hbWUoJ09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0
b3Iod2luZG93Ll9fcHJvdG9fXywgImNvbnN0cnVjdG9yIikuZ2V0LmNhbGwoY3Jvc3NPcmlnaW5X
aW5kb3cuX19wcm90b19fKScsICdUeXBlRXJyb3InKTsKKyAgICBzaG91bGRUaHJvd0Vycm9yTmFt
ZSgnY3Jvc3NPcmlnaW5XaW5kb3cuY29uc3RydWN0b3InLCAnU2VjdXJpdHlFcnJvcicpOworICAg
IHNob3VsZFRocm93RXJyb3JOYW1lKCdPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGNy
b3NzT3JpZ2luV2luZG93Ll9fcHJvdG9fXywgImNvbnN0cnVjdG9yIikudmFsdWUnLCAnU2VjdXJp
dHlFcnJvcicpOwogICAgIHNob3VsZEJlVHJ1ZSgnT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3Jp
cHRvcih3aW5kb3csICJsb2NhdGlvbiIpLmdldC5jYWxsKGNyb3NzT3JpZ2luV2luZG93KSA9PT0g
Y3Jvc3NPcmlnaW5XaW5kb3cubG9jYXRpb24nKTsKICAgICBmaW5pc2hKU1Rlc3QoKTsKIH0KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRt
bC9icm93c2Vycy9vcmlnaW4vY3Jvc3Mtb3JpZ2luLW9iamVjdHMvY3Jvc3Mtb3JpZ2luLW9iamVj
dHMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10
ZXN0cy9odG1sL2Jyb3dzZXJzL29yaWdpbi9jcm9zcy1vcmlnaW4tb2JqZWN0cy9jcm9zcy1vcmln
aW4tb2JqZWN0cy1leHBlY3RlZC50eHQKaW5kZXggNDNhOWI0NzQ0MWNmODUxNTdhOTMyYmEzMGNm
MTk3YmNhY2FlYjdkMC4uMThkYWI2ZmZkMzAzMzNlZGQ4YWM1ODhiOGEyOGQ4MmYwMDVkNWQzZSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9o
dG1sL2Jyb3dzZXJzL29yaWdpbi9jcm9zcy1vcmlnaW4tb2JqZWN0cy9jcm9zcy1vcmlnaW4tb2Jq
ZWN0cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL2Jyb3dzZXJzL29yaWdpbi9jcm9zcy1vcmlnaW4tb2JqZWN0cy9jcm9z
cy1vcmlnaW4tb2JqZWN0cy1leHBlY3RlZC50eHQKQEAgLTIxLDggKzIxLDEyIEBAIEZBSUwgT25s
eSB3aGl0ZWxpc3RlZCBwcm9wZXJ0aWVzIGFyZSBhY2Nlc3NpYmxlIGNyb3NzLW9yaWdpbiAoY3Jv
c3Mtb3JpZ2luKSBhc3NlCiBGQUlMIE9ubHkgd2hpdGVsaXN0ZWQgcHJvcGVydGllcyBhcmUgYWNj
ZXNzaWJsZSBjcm9zcy1vcmlnaW4gKHNhbWUtb3JpZ2luICsgZG9jdW1lbnQuZG9tYWluKSBhc3Nl
cnRfdGhyb3dzOiBTaG91bGQgdGhyb3cgd2hlbiB3cml0aW5nIHRvIHRvU3RyaW5nIG9uIExvY2F0
aW9uIGZ1bmN0aW9uICJmdW5jdGlvbiAoKSB7IHdpbi5sb2NhdGlvbltwcm9wXSA9IHVuZGVmaW5l
ZDsgfSIgZGlkIG5vdCB0aHJvdwogRkFJTCBPbmx5IHdoaXRlbGlzdGVkIHByb3BlcnRpZXMgYXJl
IGFjY2Vzc2libGUgY3Jvc3Mtb3JpZ2luIChjcm9zcy1zaXRlKSBhc3NlcnRfdGhyb3dzOiBTaG91
bGQgdGhyb3cgd2hlbiB3cml0aW5nIHRvIHRvU3RyaW5nIG9uIExvY2F0aW9uIGZ1bmN0aW9uICJm
dW5jdGlvbiAoKSB7IHdpbi5sb2NhdGlvbltwcm9wXSA9IHVuZGVmaW5lZDsgfSIgZGlkIG5vdCB0
aHJvdwogRkFJTCBPbmx5IHdoaXRlbGlzdGVkIHByb3BlcnRpZXMgYXJlIHVzYWJsZSBhcyBjcm9z
cy1vcmlnaW4gdGhpcyBvYmplY3RzIChjcm9zcy1vcmlnaW4pIHByb21pc2VfdGVzdDogVW5oYW5k
bGVkIHJlamVjdGlvbiB3aXRoIHZhbHVlOiBvYmplY3QgIlN5bnRheEVycm9yOiBUaGUgc3RyaW5n
IGRpZCBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIHBhdHRlcm4uIgotRkFJTCBPbmx5IHdoaXRlbGlz
dGVkIHByb3BlcnRpZXMgYXJlIHVzYWJsZSBhcyBjcm9zcy1vcmlnaW4gdGhpcyBvYmplY3RzIChz
YW1lLW9yaWdpbiArIGRvY3VtZW50LmRvbWFpbikgYXNzZXJ0X3Rocm93czogU2hvdWxkIHRocm93
IHdoZW4gY2FsbGluZyB3aW5kb3cuY3JlYXRlSW1hZ2VCaXRtYXAgd2l0aCBjcm9zcy1vcmlnaW4g
dGhpcyBvYmplY3QgZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsgdGhyb3cgZSB9IiB0aHJldyBvYmpl
Y3QgIlR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMiIHRoYXQgaXMgbm90IGEgRE9NRXhj
ZXB0aW9uIFNlY3VyaXR5RXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBlcXVhbCB0byB1bmRlZmlu
ZWQsIGV4cGVjdGVkIDE4Ci1GQUlMIE9ubHkgd2hpdGVsaXN0ZWQgcHJvcGVydGllcyBhcmUgdXNh
YmxlIGFzIGNyb3NzLW9yaWdpbiB0aGlzIG9iamVjdHMgKGNyb3NzLXNpdGUpIGFzc2VydF90aHJv
d3M6IFNob3VsZCB0aHJvdyB3aGVuIGNhbGxpbmcgd2luZG93LmNyZWF0ZUltYWdlQml0bWFwIHdp
dGggY3Jvc3Mtb3JpZ2luIHRoaXMgb2JqZWN0IGZ1bmN0aW9uICJmdW5jdGlvbiAoKSB7IHRocm93
IGUgfSIgdGhyZXcgb2JqZWN0ICJUeXBlRXJyb3I6IE5vdCBlbm91Z2ggYXJndW1lbnRzIiB0aGF0
IGlzIG5vdCBhIERPTUV4Y2VwdGlvbiBTZWN1cml0eUVycm9yOiBwcm9wZXJ0eSAiY29kZSIgaXMg
ZXF1YWwgdG8gdW5kZWZpbmVkLCBleHBlY3RlZCAxOAorRkFJTCBPbmx5IHdoaXRlbGlzdGVkIHBy
b3BlcnRpZXMgYXJlIHVzYWJsZSBhcyBjcm9zcy1vcmlnaW4gdGhpcyBvYmplY3RzIChzYW1lLW9y
aWdpbiArIGRvY3VtZW50LmRvbWFpbikgYXNzZXJ0X3Rocm93czogU2hvdWxkIHRocm93IHdoZW4g
Y2FsbGluZyB3aW5kb3cuQXVkaW9Db250ZXh0IHdpdGggY3Jvc3Mtb3JpZ2luIHRoaXMgb2JqZWN0
IGZ1bmN0aW9uICJmdW5jdGlvbiB3ZWJraXRBdWRpb0NvbnRleHQoKSB7CisgICAgW25hdGl2ZSBj
b2RlXQorfSIgdGhyZXcgb2JqZWN0ICJUeXBlRXJyb3I6IENvbnN0cnVjdG9yIHJlcXVpcmVzICdu
ZXcnIG9wZXJhdG9yIiB0aGF0IGlzIG5vdCBhIERPTUV4Y2VwdGlvbiBTZWN1cml0eUVycm9yOiBw
cm9wZXJ0eSAiY29kZSIgaXMgZXF1YWwgdG8gdW5kZWZpbmVkLCBleHBlY3RlZCAxOAorRkFJTCBP
bmx5IHdoaXRlbGlzdGVkIHByb3BlcnRpZXMgYXJlIHVzYWJsZSBhcyBjcm9zcy1vcmlnaW4gdGhp
cyBvYmplY3RzIChjcm9zcy1zaXRlKSBhc3NlcnRfdGhyb3dzOiBTaG91bGQgdGhyb3cgd2hlbiBj
YWxsaW5nIHdpbmRvdy5BdWRpb0NvbnRleHQgd2l0aCBjcm9zcy1vcmlnaW4gdGhpcyBvYmplY3Qg
ZnVuY3Rpb24gImZ1bmN0aW9uIHdlYmtpdEF1ZGlvQ29udGV4dCgpIHsKKyAgICBbbmF0aXZlIGNv
ZGVdCit9IiB0aHJldyBvYmplY3QgIlR5cGVFcnJvcjogQ29uc3RydWN0b3IgcmVxdWlyZXMgJ25l
dycgb3BlcmF0b3IiIHRoYXQgaXMgbm90IGEgRE9NRXhjZXB0aW9uIFNlY3VyaXR5RXJyb3I6IHBy
b3BlcnR5ICJjb2RlIiBpcyBlcXVhbCB0byB1bmRlZmluZWQsIGV4cGVjdGVkIDE4CiBQQVNTIFtb
R2V0UHJvdG90eXBlT2ZdXSBzaG91bGQgcmV0dXJuIG51bGwgKGNyb3NzLW9yaWdpbikgCiBQQVNT
IFtbR2V0UHJvdG90eXBlT2ZdXSBzaG91bGQgcmV0dXJuIG51bGwgKHNhbWUtb3JpZ2luICsgZG9j
dW1lbnQuZG9tYWluKSAKIFBBU1MgW1tHZXRQcm90b3R5cGVPZl1dIHNob3VsZCByZXR1cm4gbnVs
bCAoY3Jvc3Mtc2l0ZSkgCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>385335</attachid>
            <date>2019-12-10 18:29:33 -0800</date>
            <delta_ts>2019-12-11 11:05:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-205092-20191210182907.patch</filename>
            <type>text/plain</type>
            <size>22980</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUzMzYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2MyZDgxY2NmMWJmMjNh
MjA0YTVjMDdhY2U4MTcxMGEzM2IzOWVmMy4uM2E0ZjhkYjk0ZjJhYzdkYjg2NTM4OWU4NWM0OTMy
YjJjYWY4M2I2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE5LTEyLTEwICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgW0JpbmRpbmdzXSBDcm9zcy1v
cmlnaW4gY2hlY2tzIGhhcHBlbiB0b28gbGF0ZSBmb3Igb3ZlcmxvYWRlZCBtZXRob2RzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDUwOTIKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDcm9zcy1vcmlnaW4g
Y2hlY2tzIGhhcHBlbiB0b28gbGF0ZSBmb3Igb3ZlcmxvYWRlZCBtZXRob2RzLiBXZSdyZSBzdXBw
b3NlZCB0byBkbyB0aGUgc2VjdXJpdHkgY2hlY2sKKyAgICAgICAgYW5kIHRoZW4gZmluZCB0aGUg
cmlnaHQgb3ZlcmxvYWQgdG8gY2FsbCBbMV0uIEluIG91ciBiaW5kaW5ncywgd2UgZmlyc3QgZmlu
ZCB0aGUgcmlnaHQgb3ZlcmxvYWQgYm9keQorICAgICAgICB0byBjYWxsIGFuZCB0aGVuIGRvIHRo
ZSBzZWN1cml0eSBjaGVjayBpbiB0aGUgYm9keSBvZiB0aGUgY2hvc2VuIG92ZXJsb2FkLiBUaGlz
IHJlc3VsdHMgaW4gdGhlIHdyb25nCisgICAgICAgIGV4Y2VwdGlvbiBiZWluZyB0aHJvd24gaW4g
c29tZSBjYXNlcyAoVHlwZUVycm9yIGR1ZSB0byBtaXNzaW5nIGFyZ3VtZW50cyBpbnN0ZWFkIG9m
IGEgU2VjdXJpdHlFcnJvcikuCisKKyAgICAgICAgWzFdIGh0dHBzOi8vaGV5Y2FtLmdpdGh1Yi5p
by93ZWJpZGwvI2Rmbi1jcmVhdGUtb3BlcmF0aW9uLWZ1bmN0aW9uCisKKyAgICAgICAgTm8gbmV3
IHRlc3RzLCB1cGRhdGVkIGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChHZW5lcmF0ZU9wZXJhdGlvbkJvZHlE
ZWZpbml0aW9uKToKKyAgICAgICAgKEdlbmVyYXRlT3BlcmF0aW9uRGVmaW5pdGlvbik6CisKIDIw
MTktMTItMTAgIEZ1amlpIEhpcm9ub3JpICA8SGlyb25vcmkuRnVqaWlAc29ueS5jb20+CiAKICAg
ICAgICAgW1dpbl0gRml4IE1TVkMgd2FybmluZyBDNDcwMTogcG90ZW50aWFsbHkgdW5pbml0aWFs
aXplZCBsb2NhbCB2YXJpYWJsZSAneCcgdXNlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCAyZmM0NjZlNzdiN2Y1NjFhNWVm
NTkwNTZjYzFlNDJmNGIzMWZiMjFhLi5jZjIwNDY1YmM1NjM3MTEyODUzYWQ0YmNiZTQ5MDI3ZWVk
ZDc4ZTE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVH
ZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVH
ZW5lcmF0b3JKUy5wbQpAQCAtNTIyMiw3ICs1MjIyLDcgQEAgc3ViIEdlbmVyYXRlT3BlcmF0aW9u
VHJhbXBvbGluZURlZmluaXRpb24KIAogc3ViIEdlbmVyYXRlT3BlcmF0aW9uQm9keURlZmluaXRp
b24KIHsKLSAgICBteSAoJG91dHB1dEFycmF5LCAkaW50ZXJmYWNlLCAkY2xhc3NOYW1lLCAkb3Bl
cmF0aW9uLCAkZnVuY3Rpb25OYW1lLCAkZnVuY3Rpb25JbXBsZW1lbnRhdGlvbk5hbWUsICRmdW5j
dGlvbkJvZHlOYW1lLCAkZ2VuZXJhdGluZ092ZXJsb2FkRGlzcGF0Y2hlcikgPSBAXzsKKyAgICBt
eSAoJG91dHB1dEFycmF5LCAkaW50ZXJmYWNlLCAkY2xhc3NOYW1lLCAkb3BlcmF0aW9uLCAkZnVu
Y3Rpb25OYW1lLCAkZnVuY3Rpb25JbXBsZW1lbnRhdGlvbk5hbWUsICRmdW5jdGlvbkJvZHlOYW1l
LCAkaXNPdmVybG9hZGVkLCAkZ2VuZXJhdGluZ092ZXJsb2FkRGlzcGF0Y2hlcikgPSBAXzsKIAog
ICAgIG15ICRoYXNQcm9taXNlUmV0dXJuVHlwZSA9ICRjb2RlR2VuZXJhdG9yLT5Jc1Byb21pc2VU
eXBlKCRvcGVyYXRpb24tPnR5cGUpOwogICAgIG15ICRpZGxPcGVyYXRpb25UeXBlID0gJGhhc1By
b21pc2VSZXR1cm5UeXBlID8gIklETE9wZXJhdGlvblJldHVybmluZ1Byb21pc2UiIDogIklETE9w
ZXJhdGlvbiI7CkBAIC01MjQxLDkgKzUyNDEsMTEgQEAgc3ViIEdlbmVyYXRlT3BlcmF0aW9uQm9k
eURlZmluaXRpb24KICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgVU5VU0VEX1BBUkFNKGNh
bGxGcmFtZSk7XG4iKTsKICAgICBwdXNoKEAkb3V0cHV0QXJyYXksICIgICAgVU5VU0VEX1BBUkFN
KHRocm93U2NvcGUpO1xuIik7CiAKLSAgICBpZiAoISRnZW5lcmF0aW5nT3ZlcmxvYWREaXNwYXRj
aGVyKSB7Ci0gICAgICAgIEdlbmVyYXRlQ3VzdG9tRWxlbWVudFJlYWN0aW9uc1N0YWNrSWZOZWVk
ZWQoJG91dHB1dEFycmF5LCAkb3BlcmF0aW9uLCAiKmxleGljYWxHbG9iYWxPYmplY3QiKTsKKyAg
ICBHZW5lcmF0ZUN1c3RvbUVsZW1lbnRSZWFjdGlvbnNTdGFja0lmTmVlZGVkKCRvdXRwdXRBcnJh
eSwgJG9wZXJhdGlvbiwgIipsZXhpY2FsR2xvYmFsT2JqZWN0IikgdW5sZXNzICRnZW5lcmF0aW5n
T3ZlcmxvYWREaXNwYXRjaGVyOwogCisgICAgIyBGb3Igb3ZlcmxvYWRzLCB3ZSBnZW5lcmF0ZSB0
aGUgc2VjdXJpdHkgY2hlY2sgaW4gdGhlIG92ZXJsb2FkIGRpc3BhdGNoZXIsIGluc3RlYWQgb2Yg
dGhlIGJvZHkgb2YgZWFjaCBvdmVybG9hZCwgYXMgcGVyIHNwZWNpZmljYXRpb246CisgICAgIyBo
dHRwczovL2hleWNhbS5naXRodWIuaW8vd2ViaWRsLyNkZm4tY3JlYXRlLW9wZXJhdGlvbi1mdW5j
dGlvbgorICAgIGlmICghJGlzT3ZlcmxvYWRlZCB8fCAkZ2VuZXJhdGluZ092ZXJsb2FkRGlzcGF0
Y2hlcikgewogICAgICAgICBpZiAoJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Q2hl
Y2tTZWN1cml0eX0gYW5kICEkb3BlcmF0aW9uLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntEb05vdENo
ZWNrU2VjdXJpdHl9KSB7CiAgICAgICAgICAgICBhc3NlcnQoIlNlY3VyaXR5IGNoZWNrcyBhcmUg
bm90IHN1cHBvcnRlZCBmb3Igc3RhdGljIG9wZXJhdGlvbnMuIikgaWYgJG9wZXJhdGlvbi0+aXNT
dGF0aWM7CiAgICAgICAgICAgICAKQEAgLTUzMzUsNyArNTMzNyw3IEBAIHN1YiBHZW5lcmF0ZU9w
ZXJhdGlvbkRlZmluaXRpb24KICAgICBteSAkZnVuY3Rpb25JbXBsZW1lbnRhdGlvbk5hbWUgPSAk
b3BlcmF0aW9uLT5leHRlbmRlZEF0dHJpYnV0ZXMtPntJbXBsZW1lbnRlZEFzfSB8fCAkY29kZUdl
bmVyYXRvci0+V0tfbGNmaXJzdCgkb3BlcmF0aW9uLT5uYW1lKTsKICAgICBteSAkZnVuY3Rpb25C
b2R5TmFtZSA9ICgkaXNPdmVybG9hZGVkID8gJGZ1bmN0aW9uTmFtZSAuICRvcGVyYXRpb24tPntv
dmVybG9hZEluZGV4fSA6ICRmdW5jdGlvbk5hbWUpIC4gIkJvZHkiOwogCi0gICAgR2VuZXJhdGVP
cGVyYXRpb25Cb2R5RGVmaW5pdGlvbigkb3V0cHV0QXJyYXksICRpbnRlcmZhY2UsICRjbGFzc05h
bWUsICRvcGVyYXRpb24sICRmdW5jdGlvbk5hbWUsICRmdW5jdGlvbkltcGxlbWVudGF0aW9uTmFt
ZSwgJGZ1bmN0aW9uQm9keU5hbWUpOworICAgIEdlbmVyYXRlT3BlcmF0aW9uQm9keURlZmluaXRp
b24oJG91dHB1dEFycmF5LCAkaW50ZXJmYWNlLCAkY2xhc3NOYW1lLCAkb3BlcmF0aW9uLCAkZnVu
Y3Rpb25OYW1lLCAkZnVuY3Rpb25JbXBsZW1lbnRhdGlvbk5hbWUsICRmdW5jdGlvbkJvZHlOYW1l
LCAkaXNPdmVybG9hZGVkKTsKIAogICAgICMgT3ZlcmxvYWRlZCBvcGVyYXRpb25zIGRvbid0IGdl
bmVyYXRlIGEgdHJhbXBvbGluZSBmb3IgZWFjaCBvdmVybG9hZCwgYW5kIGluc3RlYWQgaGF2ZSBh
IHNpbmdsZSBkaXNwYXRjaCB0cmFtcG9saW5lCiAgICAgIyB0aGF0IGdldHMgZ2VuZXJhdGVkIGFm
dGVyIHRoZSBsYXN0IG92ZXJsb2FkIGJvZHkgaGFzIGJlZW4gZ2VuZXJhdGVkLgpAQCAtNTM1Miw3
ICs1MzU0LDcgQEAgc3ViIEdlbmVyYXRlT3BlcmF0aW9uRGVmaW5pdGlvbgogICAgICAgICBwdXNo
KEAkb3V0cHV0QXJyYXksICIjaWYgJHtvdmVybG9hZHNDb25kaXRpb25hbFN0cmluZ31cblxuIikg
aWYgJG92ZXJsb2Fkc0NvbmRpdGlvbmFsU3RyaW5nOwogCiAgICAgICAgIG15ICRvdmVybG9hZERp
c3BhdGNoZXJGdW5jdGlvbkJvZHlOYW1lID0gJGZ1bmN0aW9uTmFtZSAuICJPdmVybG9hZERpc3Bh
dGNoZXIiOwotICAgICAgICBHZW5lcmF0ZU9wZXJhdGlvbkJvZHlEZWZpbml0aW9uKCRvdXRwdXRB
cnJheSwgJGludGVyZmFjZSwgJGNsYXNzTmFtZSwgJG9wZXJhdGlvbiwgJGZ1bmN0aW9uTmFtZSwg
JGZ1bmN0aW9uSW1wbGVtZW50YXRpb25OYW1lLCAkb3ZlcmxvYWREaXNwYXRjaGVyRnVuY3Rpb25C
b2R5TmFtZSwgMSk7CisgICAgICAgIEdlbmVyYXRlT3BlcmF0aW9uQm9keURlZmluaXRpb24oJG91
dHB1dEFycmF5LCAkaW50ZXJmYWNlLCAkY2xhc3NOYW1lLCAkb3BlcmF0aW9uLCAkZnVuY3Rpb25O
YW1lLCAkZnVuY3Rpb25JbXBsZW1lbnRhdGlvbk5hbWUsICRvdmVybG9hZERpc3BhdGNoZXJGdW5j
dGlvbkJvZHlOYW1lLCAkaXNPdmVybG9hZGVkLCAxKTsKICAgICAgICAgR2VuZXJhdGVPcGVyYXRp
b25UcmFtcG9saW5lRGVmaW5pdGlvbigkb3V0cHV0QXJyYXksICRpbnRlcmZhY2UsICRjbGFzc05h
bWUsICRvcGVyYXRpb24sICRmdW5jdGlvbk5hbWUsICRvdmVybG9hZERpc3BhdGNoZXJGdW5jdGlv
bkJvZHlOYW1lKTsKICAgICAKICAgICAgICAgcHVzaChAJG91dHB1dEFycmF5LCAiI2VuZGlmXG5c
biIpIGlmICRvdmVybG9hZHNDb25kaXRpb25hbFN0cmluZzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9KUy9KU1Rlc3RBY3RpdmVET01PYmplY3QuY3Bw
IGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEFjdGl2ZURP
TU9iamVjdC5jcHAKaW5kZXggZGE1M2ZmOTY0ZDdkYzcxNjk4MDkxOWMxYjVhNWM1ZjQ5ZjQwZDYy
Zi4uOGNmMTQ1NmE5MTRjYjAwMjg5MzEyMjRiYjIwZWZiNThkN2VjZDhhZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pTVGVzdEFjdGl2ZURPTU9i
amVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L0pTL0pT
VGVzdEFjdGl2ZURPTU9iamVjdC5jcHAKQEAgLTIyLDYgKzIyLDcgQEAKICNpbmNsdWRlICJKU1Rl
c3RBY3RpdmVET01PYmplY3QuaCIKIAogI2luY2x1ZGUgIkFjdGl2ZURPTU9iamVjdC5oIgorI2lu
Y2x1ZGUgIkN1c3RvbUVsZW1lbnRSZWFjdGlvblF1ZXVlLmgiCiAjaW5jbHVkZSAiSlNET01BdHRy
aWJ1dGUuaCIKICNpbmNsdWRlICJKU0RPTUJpbmRpbmcuaCIKICNpbmNsdWRlICJKU0RPTUJpbmRp
bmdTZWN1cml0eS5oIgpAQCAtNDksNiArNTAsNyBAQCB1c2luZyBuYW1lc3BhY2UgSlNDOwogCiBK
U0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0QWN0aXZlRE9NT2JqZWN0UHJv
dG90eXBlRnVuY3Rpb25FeGNpdGluZ0Z1bmN0aW9uKEpTQzo6SlNHbG9iYWxPYmplY3QqLCBKU0M6
OkNhbGxGcmFtZSopOwogSlNDOjpFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVzdEFj
dGl2ZURPTU9iamVjdFByb3RvdHlwZUZ1bmN0aW9uUG9zdE1lc3NhZ2UoSlNDOjpKU0dsb2JhbE9i
amVjdCosIEpTQzo6Q2FsbEZyYW1lKik7CitKU0M6OkVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwganNUZXN0QWN0aXZlRE9NT2JqZWN0UHJvdG90eXBlRnVuY3Rpb25PdmVybG9hZGVkTWV0aG9k
KEpTQzo6SlNHbG9iYWxPYmplY3QqLCBKU0M6OkNhbGxGcmFtZSopOwogCiAvLyBBdHRyaWJ1dGVz
CiAKQEAgLTExOSw2ICsxMjEsNyBAQCBzdGF0aWMgY29uc3QgSGFzaFRhYmxlVmFsdWUgSlNUZXN0
QWN0aXZlRE9NT2JqZWN0UHJvdG90eXBlVGFibGVWYWx1ZXNbXSA9CiAgICAgeyAiY29uc3RydWN0
b3IiLCBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RG9udEVu
dW0pLCBOb0ludHJpbnNpYywgeyAoaW50cHRyX3Qpc3RhdGljX2Nhc3Q8UHJvcGVydHlTbG90OjpH
ZXRWYWx1ZUZ1bmM+KGpzVGVzdEFjdGl2ZURPTU9iamVjdENvbnN0cnVjdG9yKSwgKGludHB0cl90
KSBzdGF0aWNfY2FzdDxQdXRQcm9wZXJ0eVNsb3Q6OlB1dFZhbHVlRnVuYz4oc2V0SlNUZXN0QWN0
aXZlRE9NT2JqZWN0Q29uc3RydWN0b3IpIH0gfSwKICAgICB7ICJleGNpdGluZ0Z1bmN0aW9uIiwg
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KEpTQzo6UHJvcGVydHlBdHRyaWJ1dGU6OkZ1bmN0aW9uKSwg
Tm9JbnRyaW5zaWMsIHsgKGludHB0cl90KXN0YXRpY19jYXN0PFJhd05hdGl2ZUZ1bmN0aW9uPihq
c1Rlc3RBY3RpdmVET01PYmplY3RQcm90b3R5cGVGdW5jdGlvbkV4Y2l0aW5nRnVuY3Rpb24pLCAo
aW50cHRyX3QpICgxKSB9IH0sCiAgICAgeyAicG9zdE1lc3NhZ2UiLCBzdGF0aWNfY2FzdDx1bnNp
Z25lZD4oSlNDOjpQcm9wZXJ0eUF0dHJpYnV0ZTo6RnVuY3Rpb24pLCBOb0ludHJpbnNpYywgeyAo
aW50cHRyX3Qpc3RhdGljX2Nhc3Q8UmF3TmF0aXZlRnVuY3Rpb24+KGpzVGVzdEFjdGl2ZURPTU9i
amVjdFByb3RvdHlwZUZ1bmN0aW9uUG9zdE1lc3NhZ2UpLCAoaW50cHRyX3QpICgxKSB9IH0sCisg
ICAgeyAib3ZlcmxvYWRlZE1ldGhvZCIsIHN0YXRpY19jYXN0PHVuc2lnbmVkPihKU0M6OlByb3Bl
cnR5QXR0cmlidXRlOjpGdW5jdGlvbiksIE5vSW50cmluc2ljLCB7IChpbnRwdHJfdClzdGF0aWNf
Y2FzdDxSYXdOYXRpdmVGdW5jdGlvbj4oanNUZXN0QWN0aXZlRE9NT2JqZWN0UHJvdG90eXBlRnVu
Y3Rpb25PdmVybG9hZGVkTWV0aG9kKSwgKGludHB0cl90KSAoMSkgfSB9LAogfTsKIAogY29uc3Qg
Q2xhc3NJbmZvIEpTVGVzdEFjdGl2ZURPTU9iamVjdFByb3RvdHlwZTo6c19pbmZvID0geyAiVGVz
dEFjdGl2ZURPTU9iamVjdFByb3RvdHlwZSIsICZCYXNlOjpzX2luZm8sIG51bGxwdHIsIG51bGxw
dHIsIENSRUFURV9NRVRIT0RfVEFCTEUoSlNUZXN0QWN0aXZlRE9NT2JqZWN0UHJvdG90eXBlKSB9
OwpAQCAtMjU1LDYgKzI1OCw1NyBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGpzVGVz
dEFjdGl2ZURPTU9iamVjdFByb3RvdHlwZUZ1bmN0aW9uUG9zdE1lc3NhZ2UoSgogICAgIHJldHVy
biBJRExPcGVyYXRpb248SlNUZXN0QWN0aXZlRE9NT2JqZWN0Pjo6Y2FsbDxqc1Rlc3RBY3RpdmVE
T01PYmplY3RQcm90b3R5cGVGdW5jdGlvblBvc3RNZXNzYWdlQm9keT4oKmxleGljYWxHbG9iYWxP
YmplY3QsICpjYWxsRnJhbWUsICJwb3N0TWVzc2FnZSIpOwogfQogCitzdGF0aWMgaW5saW5lIEpT
Qzo6RW5jb2RlZEpTVmFsdWUganNUZXN0QWN0aXZlRE9NT2JqZWN0UHJvdG90eXBlRnVuY3Rpb25P
dmVybG9hZGVkTWV0aG9kMUJvZHkoSlNDOjpKU0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9i
amVjdCwgSlNDOjpDYWxsRnJhbWUqIGNhbGxGcmFtZSwgdHlwZW5hbWUgSURMT3BlcmF0aW9uPEpT
VGVzdEFjdGl2ZURPTU9iamVjdD46OkNsYXNzUGFyYW1ldGVyIGNhc3RlZFRoaXMsIEpTQzo6VGhy
b3dTY29wZSYgdGhyb3dTY29wZSkKK3sKKyAgICBVTlVTRURfUEFSQU0obGV4aWNhbEdsb2JhbE9i
amVjdCk7CisgICAgVU5VU0VEX1BBUkFNKGNhbGxGcmFtZSk7CisgICAgVU5VU0VEX1BBUkFNKHRo
cm93U2NvcGUpOworICAgIEN1c3RvbUVsZW1lbnRSZWFjdGlvblN0YWNrIGN1c3RvbUVsZW1lbnRS
ZWFjdGlvblN0YWNrKCpsZXhpY2FsR2xvYmFsT2JqZWN0KTsKKyAgICBhdXRvJiBpbXBsID0gY2Fz
dGVkVGhpcy0+d3JhcHBlZCgpOworICAgIGF1dG8gcGFyYW0gPSBjb252ZXJ0PElETERPTVN0cmlu
Zz4oKmxleGljYWxHbG9iYWxPYmplY3QsIGNhbGxGcmFtZS0+dW5jaGVja2VkQXJndW1lbnQoMCkp
OworICAgIFJFVFVSTl9JRl9FWENFUFRJT04odGhyb3dTY29wZSwgZW5jb2RlZEpTVmFsdWUoKSk7
CisgICAgaW1wbC5vdmVybG9hZGVkTWV0aG9kKFdURk1vdmUocGFyYW0pKTsKKyAgICByZXR1cm4g
SlNWYWx1ZTo6ZW5jb2RlKGpzVW5kZWZpbmVkKCkpOworfQorCitzdGF0aWMgaW5saW5lIEpTQzo6
RW5jb2RlZEpTVmFsdWUganNUZXN0QWN0aXZlRE9NT2JqZWN0UHJvdG90eXBlRnVuY3Rpb25PdmVy
bG9hZGVkTWV0aG9kMkJvZHkoSlNDOjpKU0dsb2JhbE9iamVjdCogbGV4aWNhbEdsb2JhbE9iamVj
dCwgSlNDOjpDYWxsRnJhbWUqIGNhbGxGcmFtZSwgdHlwZW5hbWUgSURMT3BlcmF0aW9uPEpTVGVz
dEFjdGl2ZURPTU9iamVjdD46OkNsYXNzUGFyYW1ldGVyIGNhc3RlZFRoaXMsIEpTQzo6VGhyb3dT
Y29wZSYgdGhyb3dTY29wZSkKK3sKKyAgICBVTlVTRURfUEFSQU0obGV4aWNhbEdsb2JhbE9iamVj
dCk7CisgICAgVU5VU0VEX1BBUkFNKGNhbGxGcmFtZSk7CisgICAgVU5VU0VEX1BBUkFNKHRocm93
U2NvcGUpOworICAgIGF1dG8mIGltcGwgPSBjYXN0ZWRUaGlzLT53cmFwcGVkKCk7CisgICAgYXV0
byBwYXJhbTEgPSBjb252ZXJ0PElETEludGVyZmFjZTxOb2RlPj4oKmxleGljYWxHbG9iYWxPYmpl
Y3QsIGNhbGxGcmFtZS0+dW5jaGVja2VkQXJndW1lbnQoMCksIFtdKEpTQzo6SlNHbG9iYWxPYmpl
Y3QmIGxleGljYWxHbG9iYWxPYmplY3QsIEpTQzo6VGhyb3dTY29wZSYgc2NvcGUpIHsgdGhyb3dB
cmd1bWVudFR5cGVFcnJvcihsZXhpY2FsR2xvYmFsT2JqZWN0LCBzY29wZSwgMCwgInBhcmFtMSIs
ICJUZXN0QWN0aXZlRE9NT2JqZWN0IiwgIm92ZXJsb2FkZWRNZXRob2QiLCAiTm9kZSIpOyB9KTsK
KyAgICBSRVRVUk5fSUZfRVhDRVBUSU9OKHRocm93U2NvcGUsIGVuY29kZWRKU1ZhbHVlKCkpOwor
ICAgIGF1dG8gcGFyYW0yID0gY29udmVydDxJRExJbnRlcmZhY2U8Tm9kZT4+KCpsZXhpY2FsR2xv
YmFsT2JqZWN0LCBjYWxsRnJhbWUtPnVuY2hlY2tlZEFyZ3VtZW50KDEpLCBbXShKU0M6OkpTR2xv
YmFsT2JqZWN0JiBsZXhpY2FsR2xvYmFsT2JqZWN0LCBKU0M6OlRocm93U2NvcGUmIHNjb3BlKSB7
IHRocm93QXJndW1lbnRUeXBlRXJyb3IobGV4aWNhbEdsb2JhbE9iamVjdCwgc2NvcGUsIDEsICJw
YXJhbTIiLCAiVGVzdEFjdGl2ZURPTU9iamVjdCIsICJvdmVybG9hZGVkTWV0aG9kIiwgIk5vZGUi
KTsgfSk7CisgICAgUkVUVVJOX0lGX0VYQ0VQVElPTih0aHJvd1Njb3BlLCBlbmNvZGVkSlNWYWx1
ZSgpKTsKKyAgICBpbXBsLm92ZXJsb2FkZWRNZXRob2QoKnBhcmFtMSwgKnBhcmFtMik7CisgICAg
cmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKTsKK30KKworc3RhdGljIGlubGlu
ZSBKU0M6OkVuY29kZWRKU1ZhbHVlIGpzVGVzdEFjdGl2ZURPTU9iamVjdFByb3RvdHlwZUZ1bmN0
aW9uT3ZlcmxvYWRlZE1ldGhvZE92ZXJsb2FkRGlzcGF0Y2hlcihKU0M6OkpTR2xvYmFsT2JqZWN0
KiBsZXhpY2FsR2xvYmFsT2JqZWN0LCBKU0M6OkNhbGxGcmFtZSogY2FsbEZyYW1lLCB0eXBlbmFt
ZSBJRExPcGVyYXRpb248SlNUZXN0QWN0aXZlRE9NT2JqZWN0Pjo6Q2xhc3NQYXJhbWV0ZXIgY2Fz
dGVkVGhpcywgSlNDOjpUaHJvd1Njb3BlJiB0aHJvd1Njb3BlKQoreworICAgIFVOVVNFRF9QQVJB
TShsZXhpY2FsR2xvYmFsT2JqZWN0KTsKKyAgICBVTlVTRURfUEFSQU0oY2FsbEZyYW1lKTsKKyAg
ICBVTlVTRURfUEFSQU0odGhyb3dTY29wZSk7CisgICAgaWYgKCFCaW5kaW5nU2VjdXJpdHk6OnNo
b3VsZEFsbG93QWNjZXNzVG9ET01XaW5kb3cobGV4aWNhbEdsb2JhbE9iamVjdCwgY2FzdGVkVGhp
cy0+d3JhcHBlZCgpLndpbmRvdygpLCBUaHJvd1NlY3VyaXR5RXJyb3IpKQorICAgICAgICByZXR1
cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzVW5kZWZpbmVkKCkpOworICAgIFZNJiB2bSA9IEpTQzo6Z2V0
Vk0obGV4aWNhbEdsb2JhbE9iamVjdCk7CisgICAgVU5VU0VEX1BBUkFNKHZtKTsKKyAgICBzaXpl
X3QgYXJnc0NvdW50ID0gc3RkOjptaW48c2l6ZV90PigyLCBjYWxsRnJhbWUtPmFyZ3VtZW50Q291
bnQoKSk7CisgICAgaWYgKGFyZ3NDb3VudCA9PSAxKSB7CisgICAgICAgIHJldHVybiBqc1Rlc3RB
Y3RpdmVET01PYmplY3RQcm90b3R5cGVGdW5jdGlvbk92ZXJsb2FkZWRNZXRob2QxQm9keShsZXhp
Y2FsR2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUsIGNhc3RlZFRoaXMsIHRocm93U2NvcGUpOworICAg
IH0KKyAgICBpZiAoYXJnc0NvdW50ID09IDIpIHsKKyAgICAgICAgcmV0dXJuIGpzVGVzdEFjdGl2
ZURPTU9iamVjdFByb3RvdHlwZUZ1bmN0aW9uT3ZlcmxvYWRlZE1ldGhvZDJCb2R5KGxleGljYWxH
bG9iYWxPYmplY3QsIGNhbGxGcmFtZSwgY2FzdGVkVGhpcywgdGhyb3dTY29wZSk7CisgICAgfQor
ICAgIHJldHVybiBhcmdzQ291bnQgPCAxID8gdGhyb3dWTUVycm9yKGxleGljYWxHbG9iYWxPYmpl
Y3QsIHRocm93U2NvcGUsIGNyZWF0ZU5vdEVub3VnaEFyZ3VtZW50c0Vycm9yKGxleGljYWxHbG9i
YWxPYmplY3QpKSA6IHRocm93Vk1UeXBlRXJyb3IobGV4aWNhbEdsb2JhbE9iamVjdCwgdGhyb3dT
Y29wZSk7Cit9CisKK0VuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwganNUZXN0QWN0aXZlRE9N
T2JqZWN0UHJvdG90eXBlRnVuY3Rpb25PdmVybG9hZGVkTWV0aG9kKEpTR2xvYmFsT2JqZWN0KiBs
ZXhpY2FsR2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNhbGxGcmFtZSkKK3sKKyAgICByZXR1cm4g
SURMT3BlcmF0aW9uPEpTVGVzdEFjdGl2ZURPTU9iamVjdD46OmNhbGw8anNUZXN0QWN0aXZlRE9N
T2JqZWN0UHJvdG90eXBlRnVuY3Rpb25PdmVybG9hZGVkTWV0aG9kT3ZlcmxvYWREaXNwYXRjaGVy
PigqbGV4aWNhbEdsb2JhbE9iamVjdCwgKmNhbGxGcmFtZSwgIm92ZXJsb2FkZWRNZXRob2QiKTsK
K30KKwogdm9pZCBKU1Rlc3RBY3RpdmVET01PYmplY3Q6OmFuYWx5emVIZWFwKEpTQ2VsbCogY2Vs
bCwgSGVhcEFuYWx5emVyJiBhbmFseXplcikKIHsKICAgICBhdXRvKiB0aGlzT2JqZWN0ID0ganND
YXN0PEpTVGVzdEFjdGl2ZURPTU9iamVjdCo+KGNlbGwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3REb21haW5TZWN1cml0eS5pZGwgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdERvbWFpblNlY3VyaXR5LmlkbApp
bmRleCA4YWY2YzE5MzIxMWIyN2EyYzZjMmQwMzY1YzRiYjNmNWE0OWE0MGNjLi45ZmMyNGIxM2Q0
ZWE0NTAwNjBmOWEyYmYyNTY0ZTZmM2IxMmI0NzUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdERvbWFpblNlY3VyaXR5LmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdERvbWFpblNlY3VyaXR5LmlkbApA
QCAtMzIsNCArMzIsNyBAQAogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBsb25nIGV4Y2l0aW5nQXR0
cjsKICAgICB2b2lkIGV4Y2l0aW5nRnVuY3Rpb24oTm9kZSBuZXh0Q2hpbGQpOwogICAgIFtEb05v
dENoZWNrU2VjdXJpdHldIHZvaWQgcG9zdE1lc3NhZ2UoRE9NU3RyaW5nIG1lc3NhZ2UpOworCisg
ICAgW0NFUmVhY3Rpb25zXSB2b2lkIG92ZXJsb2FkZWRNZXRob2QoRE9NU3RyaW5nIHBhcmFtKTsK
KyAgICB2b2lkIG92ZXJsb2FkZWRNZXRob2QoTm9kZSBwYXJhbTEsIE5vZGUgcGFyYW0yKTsKIH07
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKaW5kZXggYzY4ODQwZjNjZjEwZWFlYTg4ZTI5NmQ5ZDM4ODY2YzNiMGFjNzU4ZC4uYzhmYzM2
MjM5M2IxYjFiYjhkNzM5MWI0NzY3YmYzYWNlZGVjMDU1OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBA
CisyMDE5LTEyLTEwICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAg
W0JpbmRpbmdzXSBDcm9zcy1vcmlnaW4gY2hlY2tzIGhhcHBlbiB0b28gbGF0ZSBmb3Igb3Zlcmxv
YWRlZCBtZXRob2RzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMDUwOTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBFeHRlbmQgbGF5b3V0IHRlc3QgY292ZXJhZ2UuCisKKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3NlY3VyaXR5L2Nyb3NzLW9yaWdpbi13aW5kb3ctcHJvcGVydHktYWNjZXNzLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBodHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLW9yaWdpbi13aW5kb3ctcHJv
cGVydHktYWNjZXNzLmh0bWw6CisKIDIwMTktMTItMTAgIFBlbmcgTGl1ICA8cGVuZy5saXU2QGFw
cGxlLmNvbT4KIAogICAgICAgICBDcmVhdGUgYSBUZXN0RXhwZWN0YXRpb25zIGZpbGUgZm9yIHRo
ZSBHUFUgcHJvY2VzcyByZWxhdGVkIHdvcmsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2ltcG9y
dGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdlTG9nCmlu
ZGV4IDQ3ZmQ1ZTFhNTQ3OGRlNTYwOWQzMjkxOWMzNjdmODBiNmQ4MTY2ODQuLmE1NTFjMjAwMTBk
OTY3Mzc0NzdlZTU4MjNhZjVjMjk0M2RmMGY3ZTUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2lt
cG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE5LTEyLTEwICBDaHJpcyBEdW1leiAgPGNkdW1lekBh
cHBsZS5jb20+CisKKyAgICAgICAgW0JpbmRpbmdzXSBDcm9zcy1vcmlnaW4gY2hlY2tzIGhhcHBl
biB0b28gbGF0ZSBmb3Igb3ZlcmxvYWRlZCBtZXRob2RzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDUwOTIKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZWJhc2VsaW5lIFdQVCB0ZXN0IG5vdyB0aGF0IGl0
IGlzIGZhaWxpbmcgYSBiaXQgbGF0ZXIuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0tdGVzdHMv
aHRtbC9icm93c2Vycy9vcmlnaW4vY3Jvc3Mtb3JpZ2luLW9iamVjdHMvY3Jvc3Mtb3JpZ2luLW9i
amVjdHMtZXhwZWN0ZWQudHh0OgorCiAyMDE5LTEyLTEwICBDaHJpcyBEdW1leiAgPGNkdW1lekBh
cHBsZS5jb20+CiAKICAgICAgICAgUmUtc3luYyBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvYnJvd3NlcnMvb3JpZ2luL2Nyb3NzLW9yaWdpbi1vYmplY3RzL2Nyb3NzLW9yaWdp
bi1vYmplY3RzLmh0bWwgZnJvbSB1c3B0cmVhbQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9zZWN1cml0eS9jcm9zcy1vcmlnaW4td2luZG93LXByb3BlcnR5LWFjY2Vzcy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLW9yaWdpbi13
aW5kb3ctcHJvcGVydHktYWNjZXNzLWV4cGVjdGVkLnR4dAppbmRleCBkZjcyMzRkZGRmYzBkMjll
MmQxMzc3NDQ2YjlhMGVjYzRlMWIzYjExLi5kYmQzYjc4NDYzMDg0MTFmZjkzNDE2YzVkYjExOWM0
ZTc4ZDA2NTA0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Ny
b3NzLW9yaWdpbi13aW5kb3ctcHJvcGVydHktYWNjZXNzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3NlY3VyaXR5L2Nyb3NzLW9yaWdpbi13aW5kb3ctcHJvcGVydHkt
YWNjZXNzLWV4cGVjdGVkLnR4dApAQCAtOSw2ICs5LDggQEAgUEFTUyBPYmplY3QuZ2V0T3duUHJv
cGVydHlEZXNjcmlwdG9yKHdpbmRvdywgIm1lbnViYXIiKS5nZXQuY2FsbChjcm9zc09yaWdpbldp
bmQKIFBBU1MgT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih3aW5kb3csICJzY3JvbGxi
YXJzIikuZ2V0LmNhbGwoY3Jvc3NPcmlnaW5XaW5kb3cpIHRocmV3IGV4Y2VwdGlvbiBTZWN1cml0
eUVycm9yOiBCbG9ja2VkIGEgZnJhbWUgd2l0aCBvcmlnaW4gImh0dHA6Ly8xMjcuMC4wLjE6ODAw
MCIgZnJvbSBhY2Nlc3NpbmcgYSBjcm9zcy1vcmlnaW4gZnJhbWUuIFByb3RvY29scywgZG9tYWlu
cywgYW5kIHBvcnRzIG11c3QgbWF0Y2guLgogUEFTUyBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNj
cmlwdG9yKHdpbmRvdywgIm5hdmlnYXRvciIpLmdldC5jYWxsKGNyb3NzT3JpZ2luV2luZG93KSB0
aHJldyBleGNlcHRpb24gU2VjdXJpdHlFcnJvcjogQmxvY2tlZCBhIGZyYW1lIHdpdGggb3JpZ2lu
ICJodHRwOi8vMTI3LjAuMC4xOjgwMDAiIGZyb20gYWNjZXNzaW5nIGEgY3Jvc3Mtb3JpZ2luIGZy
YW1lLiBQcm90b2NvbHMsIGRvbWFpbnMsIGFuZCBwb3J0cyBtdXN0IG1hdGNoLi4KIFBBU1MgT2Jq
ZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih3aW5kb3csICJzY3JlZW5YIikuZ2V0LmNhbGwo
Y3Jvc3NPcmlnaW5XaW5kb3cpIHRocmV3IGV4Y2VwdGlvbiBTZWN1cml0eUVycm9yOiBCbG9ja2Vk
IGEgZnJhbWUgd2l0aCBvcmlnaW4gImh0dHA6Ly8xMjcuMC4wLjE6ODAwMCIgZnJvbSBhY2Nlc3Np
bmcgYSBjcm9zcy1vcmlnaW4gZnJhbWUuIFByb3RvY29scywgZG9tYWlucywgYW5kIHBvcnRzIG11
c3QgbWF0Y2guLgorUEFTUyBDYWxsaW5nIGNyZWF0ZUltYWdlQml0bWFwIHJlamVjdGVkIHByb21p
c2Ugd2l0aCBleGNlcHRpb24gU2VjdXJpdHlFcnJvci4KK1BBU1MgQ2FsbGluZyBmZXRjaCByZWpl
Y3RlZCBwcm9taXNlIHdpdGggZXhjZXB0aW9uIFNlY3VyaXR5RXJyb3IuCiBQQVNTIE9iamVjdC5n
ZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iod2luZG93Ll9fcHJvdG9fXywgImNvbnN0cnVjdG9yIiku
Z2V0LmNhbGwoY3Jvc3NPcmlnaW5XaW5kb3cpIHRocmV3IGV4Y2VwdGlvbiBUeXBlRXJyb3I6IHVu
ZGVmaW5lZCBpcyBub3QgYW4gb2JqZWN0IChldmFsdWF0aW5nICdPYmplY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKHdpbmRvdy5fX3Byb3RvX18sICJjb25zdHJ1Y3RvciIpLmdldC5jYWxsJyku
CiBQQVNTIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Iod2luZG93Ll9fcHJvdG9fXywg
ImNvbnN0cnVjdG9yIikuZ2V0LmNhbGwoY3Jvc3NPcmlnaW5XaW5kb3cuX19wcm90b19fKSB0aHJl
dyBleGNlcHRpb24gVHlwZUVycm9yOiB1bmRlZmluZWQgaXMgbm90IGFuIG9iamVjdCAoZXZhbHVh
dGluZyAnT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih3aW5kb3cuX19wcm90b19fLCAi
Y29uc3RydWN0b3IiKS5nZXQuY2FsbCcpLgogUEFTUyBjcm9zc09yaWdpbldpbmRvdy5jb25zdHJ1
Y3RvciB0aHJldyBleGNlcHRpb24gU2VjdXJpdHlFcnJvcjogQmxvY2tlZCBhIGZyYW1lIHdpdGgg
b3JpZ2luICJodHRwOi8vMTI3LjAuMC4xOjgwMDAiIGZyb20gYWNjZXNzaW5nIGEgY3Jvc3Mtb3Jp
Z2luIGZyYW1lLiBQcm90b2NvbHMsIGRvbWFpbnMsIGFuZCBwb3J0cyBtdXN0IG1hdGNoLi4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJpdHkvY3Jvc3Mtb3JpZ2luLXdp
bmRvdy1wcm9wZXJ0eS1hY2Nlc3MuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvc2VjdXJp
dHkvY3Jvc3Mtb3JpZ2luLXdpbmRvdy1wcm9wZXJ0eS1hY2Nlc3MuaHRtbAppbmRleCBmNzg5M2Mx
NmZkMGYzM2VhNzRkZjY1YTgxMWEwMzFkOGM2MWZkMjY4Li41N2RmMzc3OTAxZmU1ZmJhMTBlOTY0
ODRkZGY5MDllMTgyNTAyN2RkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3Nl
Y3VyaXR5L2Nyb3NzLW9yaWdpbi13aW5kb3ctcHJvcGVydHktYWNjZXNzLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9zZWN1cml0eS9jcm9zcy1vcmlnaW4td2luZG93LXByb3BlcnR5
LWFjY2Vzcy5odG1sCkBAIC05LDMzICs5LDMzIEBACiBkZXNjcmlwdGlvbigiVGVzdHMgdGhhdCB1
c2luZyBhbm90aGVyIHdpbmRvdydzIHByb3BlcnR5IGdldHRlciBkb2VzIG5vdCBieXBhc3MgY3Jv
c3Mtb3JpZ2luIGNoZWNrcy4iKTsKIGpzVGVzdElzQXN5bmMgPSB0cnVlOwogCi1mdW5jdGlvbiBz
aG91bGRUaHJvd09yUmV0dXJuVW5kZWZpbmVkKGV4cHJlc3Npb24pCitmdW5jdGlvbiBjYWxsaW5n
RnVuY3Rpb25TaG91bGRSZWplY3RQcm9taXNlV2l0aEVycm9yTmFtZShmdW5jdGlvbk5hbWUsIGVy
cm9yTmFtZSkKIHsKLSAgICB0cnkgewotICAgICAgICByZXN1bHQgPSBldmFsKGV4cHJlc3Npb24p
OwotICAgIH0gY2F0Y2ggKGUpIHsKLSAgICAgICAgdGVzdFBhc3NlZChleHByZXNzaW9uICsgIiB0
aHJldyBleGNlcHRpb24gIiArIGUgKyAiLiIpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotICAg
IGlmIChyZXN1bHQgPT09IHVuZGVmaW5lZCkKLSAgICAgICAgdGVzdFBhc3NlZChleHByZXNzaW9u
ICsgIiByZXR1cm5lZCB1bmRlZmluZWQuIik7Ci0gICAgZWxzZQotICAgICAgICB0ZXN0RmFpbGVk
KGV4cHJlc3Npb24gKyAiIHJldHVybmVkICIgKyByZXN1bHQpOworICAgIHJldHVybiBPYmplY3Qu
Z2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHdpbmRvdywgZnVuY3Rpb25OYW1lKS52YWx1ZS5jYWxs
KGNyb3NzT3JpZ2luV2luZG93KS50aGVuKCgpID0+IHsKKyAgICAgICAgdGVzdEZhaWxlZCgiQ2Fs
bGluZyAiICsgZnVuY3Rpb25OYW1lICsgIiBkaWQgbm90IHJlamVjdCB0aGUgcHJvbWlzZSIpOwor
ICAgIH0sIChlKSA9PiB7CisgICAgICAgIGlmIChlLm5hbWUgPT0gZXJyb3JOYW1lKQorICAgICAg
ICAgICB0ZXN0UGFzc2VkKCJDYWxsaW5nICIgKyBmdW5jdGlvbk5hbWUgKyAiIHJlamVjdGVkIHBy
b21pc2Ugd2l0aCBleGNlcHRpb24gIiArIGVycm9yTmFtZSArICIuIik7CisgICAgICAgZWxzZQor
ICAgICAgICAgICB0ZXN0RmFpbGVkKCJDYWxsaW5nICIgKyBmdW5jdGlvbk5hbWUgKyAiIHNob3Vs
ZCByZWplY3QgcHJvbWlzZSB3aXRoIGV4Y2VwdGlvbiAiICsgZXJyb3JOYW1lICsgIi4gUmVqZWN0
ZWQgd2l0aCBleGNlcHRpb24gIiArIGUubmFtZSArICIgaW5zdGVhZC4iKTsKKyAgICB9KTsKIH0K
IAotZnVuY3Rpb24gcnVuVGVzdCgpCithc3luYyBmdW5jdGlvbiBydW5UZXN0KCkKIHsKICAgICBj
cm9zc09yaWdpbldpbmRvdyA9IGZyYW1lc1swXTsKLSAgICBzaG91bGRUaHJvd09yUmV0dXJuVW5k
ZWZpbmVkKCdPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHdpbmRvdywgImRvY3VtZW50
IikuZ2V0LmNhbGwoY3Jvc3NPcmlnaW5XaW5kb3cpJyk7Ci0gICAgc2hvdWxkVGhyb3dPclJldHVy
blVuZGVmaW5lZCgnT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih3aW5kb3csICJuYW1l
IikuZ2V0LmNhbGwoY3Jvc3NPcmlnaW5XaW5kb3cpJyk7Ci0gICAgc2hvdWxkVGhyb3dPclJldHVy
blVuZGVmaW5lZCgnT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih3aW5kb3csICJtZW51
YmFyIikuZ2V0LmNhbGwoY3Jvc3NPcmlnaW5XaW5kb3cpJyk7Ci0gICAgc2hvdWxkVGhyb3dPclJl
dHVyblVuZGVmaW5lZCgnT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih3aW5kb3csICJz
Y3JvbGxiYXJzIikuZ2V0LmNhbGwoY3Jvc3NPcmlnaW5XaW5kb3cpJyk7Ci0gICAgc2hvdWxkVGhy
b3dPclJldHVyblVuZGVmaW5lZCgnT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih3aW5k
b3csICJuYXZpZ2F0b3IiKS5nZXQuY2FsbChjcm9zc09yaWdpbldpbmRvdyknKTsKLSAgICBzaG91
bGRUaHJvd09yUmV0dXJuVW5kZWZpbmVkKCdPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9y
KHdpbmRvdywgInNjcmVlblgiKS5nZXQuY2FsbChjcm9zc09yaWdpbldpbmRvdyknKTsKLSAgICBz
aG91bGRUaHJvd09yUmV0dXJuVW5kZWZpbmVkKCdPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlw
dG9yKHdpbmRvdy5fX3Byb3RvX18sICJjb25zdHJ1Y3RvciIpLmdldC5jYWxsKGNyb3NzT3JpZ2lu
V2luZG93KScpOwotICAgIHNob3VsZFRocm93T3JSZXR1cm5VbmRlZmluZWQoJ09iamVjdC5nZXRP
d25Qcm9wZXJ0eURlc2NyaXB0b3Iod2luZG93Ll9fcHJvdG9fXywgImNvbnN0cnVjdG9yIikuZ2V0
LmNhbGwoY3Jvc3NPcmlnaW5XaW5kb3cuX19wcm90b19fKScpOwotICAgIHNob3VsZFRocm93T3JS
ZXR1cm5VbmRlZmluZWQoJ2Nyb3NzT3JpZ2luV2luZG93LmNvbnN0cnVjdG9yJyk7Ci0gICAgc2hv
dWxkVGhyb3dPclJldHVyblVuZGVmaW5lZCgnT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRv
cihjcm9zc09yaWdpbldpbmRvdy5fX3Byb3RvX18sICJjb25zdHJ1Y3RvciIpLnZhbHVlJyk7Cisg
ICAgc2hvdWxkVGhyb3dFcnJvck5hbWUoJ09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3Io
d2luZG93LCAiZG9jdW1lbnQiKS5nZXQuY2FsbChjcm9zc09yaWdpbldpbmRvdyknLCAnU2VjdXJp
dHlFcnJvcicpOworICAgIHNob3VsZFRocm93RXJyb3JOYW1lKCdPYmplY3QuZ2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKHdpbmRvdywgIm5hbWUiKS5nZXQuY2FsbChjcm9zc09yaWdpbldpbmRvdykn
LCAnU2VjdXJpdHlFcnJvcicpOworICAgIHNob3VsZFRocm93RXJyb3JOYW1lKCdPYmplY3QuZ2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yKHdpbmRvdywgIm1lbnViYXIiKS5nZXQuY2FsbChjcm9zc09y
aWdpbldpbmRvdyknLCAnU2VjdXJpdHlFcnJvcicpOworICAgIHNob3VsZFRocm93RXJyb3JOYW1l
KCdPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHdpbmRvdywgInNjcm9sbGJhcnMiKS5n
ZXQuY2FsbChjcm9zc09yaWdpbldpbmRvdyknLCAnU2VjdXJpdHlFcnJvcicpOworICAgIHNob3Vs
ZFRocm93RXJyb3JOYW1lKCdPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHdpbmRvdywg
Im5hdmlnYXRvciIpLmdldC5jYWxsKGNyb3NzT3JpZ2luV2luZG93KScsICdTZWN1cml0eUVycm9y
Jyk7CisgICAgc2hvdWxkVGhyb3dFcnJvck5hbWUoJ09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3Iod2luZG93LCAic2NyZWVuWCIpLmdldC5jYWxsKGNyb3NzT3JpZ2luV2luZG93KScsICdT
ZWN1cml0eUVycm9yJyk7CisgICAgYXdhaXQgY2FsbGluZ0Z1bmN0aW9uU2hvdWxkUmVqZWN0UHJv
bWlzZVdpdGhFcnJvck5hbWUoJ2NyZWF0ZUltYWdlQml0bWFwJywgJ1NlY3VyaXR5RXJyb3InKTsK
KyAgICBhd2FpdCBjYWxsaW5nRnVuY3Rpb25TaG91bGRSZWplY3RQcm9taXNlV2l0aEVycm9yTmFt
ZSgnZmV0Y2gnLCAnU2VjdXJpdHlFcnJvcicpOworICAgIHNob3VsZFRocm93RXJyb3JOYW1lKCdP
YmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHdpbmRvdy5fX3Byb3RvX18sICJjb25zdHJ1
Y3RvciIpLmdldC5jYWxsKGNyb3NzT3JpZ2luV2luZG93KScsICdUeXBlRXJyb3InKTsKKyAgICBz
aG91bGRUaHJvd0Vycm9yTmFtZSgnT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih3aW5k
b3cuX19wcm90b19fLCAiY29uc3RydWN0b3IiKS5nZXQuY2FsbChjcm9zc09yaWdpbldpbmRvdy5f
X3Byb3RvX18pJywgJ1R5cGVFcnJvcicpOworICAgIHNob3VsZFRocm93RXJyb3JOYW1lKCdjcm9z
c09yaWdpbldpbmRvdy5jb25zdHJ1Y3RvcicsICdTZWN1cml0eUVycm9yJyk7CisgICAgc2hvdWxk
VGhyb3dFcnJvck5hbWUoJ09iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoY3Jvc3NPcmln
aW5XaW5kb3cuX19wcm90b19fLCAiY29uc3RydWN0b3IiKS52YWx1ZScsICdTZWN1cml0eUVycm9y
Jyk7CiAgICAgc2hvdWxkQmVUcnVlKCdPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHdp
bmRvdywgImxvY2F0aW9uIikuZ2V0LmNhbGwoY3Jvc3NPcmlnaW5XaW5kb3cpID09PSBjcm9zc09y
aWdpbldpbmRvdy5sb2NhdGlvbicpOwogICAgIGZpbmlzaEpTVGVzdCgpOwogfQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2Jyb3dz
ZXJzL29yaWdpbi9jcm9zcy1vcmlnaW4tb2JqZWN0cy9jcm9zcy1vcmlnaW4tb2JqZWN0cy1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0
bWwvYnJvd3NlcnMvb3JpZ2luL2Nyb3NzLW9yaWdpbi1vYmplY3RzL2Nyb3NzLW9yaWdpbi1vYmpl
Y3RzLWV4cGVjdGVkLnR4dAppbmRleCA0M2E5YjQ3NDQxY2Y4NTE1N2E5MzJiYTMwY2YxOTdiY2Fj
YWViN2QwLi4xOGRhYjZmZmQzMDMzM2VkZDhhYzU4OGI4YTI4ZDgyZjAwNWQ1ZDNlIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvYnJv
d3NlcnMvb3JpZ2luL2Nyb3NzLW9yaWdpbi1vYmplY3RzL2Nyb3NzLW9yaWdpbi1vYmplY3RzLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRl
c3RzL2h0bWwvYnJvd3NlcnMvb3JpZ2luL2Nyb3NzLW9yaWdpbi1vYmplY3RzL2Nyb3NzLW9yaWdp
bi1vYmplY3RzLWV4cGVjdGVkLnR4dApAQCAtMjEsOCArMjEsMTIgQEAgRkFJTCBPbmx5IHdoaXRl
bGlzdGVkIHByb3BlcnRpZXMgYXJlIGFjY2Vzc2libGUgY3Jvc3Mtb3JpZ2luIChjcm9zcy1vcmln
aW4pIGFzc2UKIEZBSUwgT25seSB3aGl0ZWxpc3RlZCBwcm9wZXJ0aWVzIGFyZSBhY2Nlc3NpYmxl
IGNyb3NzLW9yaWdpbiAoc2FtZS1vcmlnaW4gKyBkb2N1bWVudC5kb21haW4pIGFzc2VydF90aHJv
d3M6IFNob3VsZCB0aHJvdyB3aGVuIHdyaXRpbmcgdG8gdG9TdHJpbmcgb24gTG9jYXRpb24gZnVu
Y3Rpb24gImZ1bmN0aW9uICgpIHsgd2luLmxvY2F0aW9uW3Byb3BdID0gdW5kZWZpbmVkOyB9IiBk
aWQgbm90IHRocm93CiBGQUlMIE9ubHkgd2hpdGVsaXN0ZWQgcHJvcGVydGllcyBhcmUgYWNjZXNz
aWJsZSBjcm9zcy1vcmlnaW4gKGNyb3NzLXNpdGUpIGFzc2VydF90aHJvd3M6IFNob3VsZCB0aHJv
dyB3aGVuIHdyaXRpbmcgdG8gdG9TdHJpbmcgb24gTG9jYXRpb24gZnVuY3Rpb24gImZ1bmN0aW9u
ICgpIHsgd2luLmxvY2F0aW9uW3Byb3BdID0gdW5kZWZpbmVkOyB9IiBkaWQgbm90IHRocm93CiBG
QUlMIE9ubHkgd2hpdGVsaXN0ZWQgcHJvcGVydGllcyBhcmUgdXNhYmxlIGFzIGNyb3NzLW9yaWdp
biB0aGlzIG9iamVjdHMgKGNyb3NzLW9yaWdpbikgcHJvbWlzZV90ZXN0OiBVbmhhbmRsZWQgcmVq
ZWN0aW9uIHdpdGggdmFsdWU6IG9iamVjdCAiU3ludGF4RXJyb3I6IFRoZSBzdHJpbmcgZGlkIG5v
dCBtYXRjaCB0aGUgZXhwZWN0ZWQgcGF0dGVybi4iCi1GQUlMIE9ubHkgd2hpdGVsaXN0ZWQgcHJv
cGVydGllcyBhcmUgdXNhYmxlIGFzIGNyb3NzLW9yaWdpbiB0aGlzIG9iamVjdHMgKHNhbWUtb3Jp
Z2luICsgZG9jdW1lbnQuZG9tYWluKSBhc3NlcnRfdGhyb3dzOiBTaG91bGQgdGhyb3cgd2hlbiBj
YWxsaW5nIHdpbmRvdy5jcmVhdGVJbWFnZUJpdG1hcCB3aXRoIGNyb3NzLW9yaWdpbiB0aGlzIG9i
amVjdCBmdW5jdGlvbiAiZnVuY3Rpb24gKCkgeyB0aHJvdyBlIH0iIHRocmV3IG9iamVjdCAiVHlw
ZUVycm9yOiBOb3QgZW5vdWdoIGFyZ3VtZW50cyIgdGhhdCBpcyBub3QgYSBET01FeGNlcHRpb24g
U2VjdXJpdHlFcnJvcjogcHJvcGVydHkgImNvZGUiIGlzIGVxdWFsIHRvIHVuZGVmaW5lZCwgZXhw
ZWN0ZWQgMTgKLUZBSUwgT25seSB3aGl0ZWxpc3RlZCBwcm9wZXJ0aWVzIGFyZSB1c2FibGUgYXMg
Y3Jvc3Mtb3JpZ2luIHRoaXMgb2JqZWN0cyAoY3Jvc3Mtc2l0ZSkgYXNzZXJ0X3Rocm93czogU2hv
dWxkIHRocm93IHdoZW4gY2FsbGluZyB3aW5kb3cuY3JlYXRlSW1hZ2VCaXRtYXAgd2l0aCBjcm9z
cy1vcmlnaW4gdGhpcyBvYmplY3QgZnVuY3Rpb24gImZ1bmN0aW9uICgpIHsgdGhyb3cgZSB9IiB0
aHJldyBvYmplY3QgIlR5cGVFcnJvcjogTm90IGVub3VnaCBhcmd1bWVudHMiIHRoYXQgaXMgbm90
IGEgRE9NRXhjZXB0aW9uIFNlY3VyaXR5RXJyb3I6IHByb3BlcnR5ICJjb2RlIiBpcyBlcXVhbCB0
byB1bmRlZmluZWQsIGV4cGVjdGVkIDE4CitGQUlMIE9ubHkgd2hpdGVsaXN0ZWQgcHJvcGVydGll
cyBhcmUgdXNhYmxlIGFzIGNyb3NzLW9yaWdpbiB0aGlzIG9iamVjdHMgKHNhbWUtb3JpZ2luICsg
ZG9jdW1lbnQuZG9tYWluKSBhc3NlcnRfdGhyb3dzOiBTaG91bGQgdGhyb3cgd2hlbiBjYWxsaW5n
IHdpbmRvdy5BdWRpb0NvbnRleHQgd2l0aCBjcm9zcy1vcmlnaW4gdGhpcyBvYmplY3QgZnVuY3Rp
b24gImZ1bmN0aW9uIHdlYmtpdEF1ZGlvQ29udGV4dCgpIHsKKyAgICBbbmF0aXZlIGNvZGVdCit9
IiB0aHJldyBvYmplY3QgIlR5cGVFcnJvcjogQ29uc3RydWN0b3IgcmVxdWlyZXMgJ25ldycgb3Bl
cmF0b3IiIHRoYXQgaXMgbm90IGEgRE9NRXhjZXB0aW9uIFNlY3VyaXR5RXJyb3I6IHByb3BlcnR5
ICJjb2RlIiBpcyBlcXVhbCB0byB1bmRlZmluZWQsIGV4cGVjdGVkIDE4CitGQUlMIE9ubHkgd2hp
dGVsaXN0ZWQgcHJvcGVydGllcyBhcmUgdXNhYmxlIGFzIGNyb3NzLW9yaWdpbiB0aGlzIG9iamVj
dHMgKGNyb3NzLXNpdGUpIGFzc2VydF90aHJvd3M6IFNob3VsZCB0aHJvdyB3aGVuIGNhbGxpbmcg
d2luZG93LkF1ZGlvQ29udGV4dCB3aXRoIGNyb3NzLW9yaWdpbiB0aGlzIG9iamVjdCBmdW5jdGlv
biAiZnVuY3Rpb24gd2Via2l0QXVkaW9Db250ZXh0KCkgeworICAgIFtuYXRpdmUgY29kZV0KK30i
IHRocmV3IG9iamVjdCAiVHlwZUVycm9yOiBDb25zdHJ1Y3RvciByZXF1aXJlcyAnbmV3JyBvcGVy
YXRvciIgdGhhdCBpcyBub3QgYSBET01FeGNlcHRpb24gU2VjdXJpdHlFcnJvcjogcHJvcGVydHkg
ImNvZGUiIGlzIGVxdWFsIHRvIHVuZGVmaW5lZCwgZXhwZWN0ZWQgMTgKIFBBU1MgW1tHZXRQcm90
b3R5cGVPZl1dIHNob3VsZCByZXR1cm4gbnVsbCAoY3Jvc3Mtb3JpZ2luKSAKIFBBU1MgW1tHZXRQ
cm90b3R5cGVPZl1dIHNob3VsZCByZXR1cm4gbnVsbCAoc2FtZS1vcmlnaW4gKyBkb2N1bWVudC5k
b21haW4pIAogUEFTUyBbW0dldFByb3RvdHlwZU9mXV0gc2hvdWxkIHJldHVybiBudWxsIChjcm9z
cy1zaXRlKSAK
</data>

          </attachment>
      

    </bug>

</bugzilla>