<?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>216198</bug_id>
          
          <creation_ts>2020-09-04 16:31:48 -0700</creation_ts>
          <short_desc>WKWebView Swift overlay has mis-annotated nullability for evaluateJavaScript</short_desc>
          <delta_ts>2020-09-21 12:17:10 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit API</component>
          <version>Other</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="James Savage">james.savage</reporter>
          <assigned_to name="James Savage">james.savage</assigned_to>
          <cc>beidson</cc>
    
    <cc>darin</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1685912</commentid>
    <comment_count>0</comment_count>
    <who name="James Savage">james.savage</who>
    <bug_when>2020-09-04 16:31:48 -0700</bug_when>
    <thetext>&lt;rdar://problem/68035950&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1685913</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-09-04 16:32:10 -0700</bug_when>
    <thetext>&lt;rdar://problem/68371376&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1689914</commentid>
    <comment_count>2</comment_count>
      <attachid>409162</attachid>
    <who name="James Savage">james.savage</who>
    <bug_when>2020-09-18 12:30:10 -0700</bug_when>
    <thetext>Created attachment 409162
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690418</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-09-21 12:17:09 -0700</bug_when>
    <thetext>Committed r267352: &lt;https://trac.webkit.org/changeset/267352&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 409162.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409162</attachid>
            <date>2020-09-18 12:30:10 -0700</date>
            <delta_ts>2020-09-21 12:17:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216198-20200918123010.patch</filename>
            <type>text/plain</type>
            <size>22635</size>
            <attacher name="James Savage">james.savage</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2NDE4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGYxZDU1ZmQyZDA0Y2I0MjI0
NjNlOTAzMDQwNDE0NWFmNTZmZmQyY2QuLjIzOGFmZTg2OTY0NmFiMWU3ZjdhZjIyMTU0MTVjZDdh
YzExN2Q5YWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjggQEAKKzIwMjAtMDktMDQgIEphbWVzIFNh
dmFnZSAgPGphbWVzLnNhdmFnZUBhcHBsZS5jb20+CisKKyAgICAgICAgV0tXZWJWaWV3IFN3aWZ0
IG92ZXJsYXkgaGFzIG1pcy1hbm5vdGF0ZWQgbnVsbGFiaWxpdHkgZm9yIGV2YWx1YXRlSmF2YVNj
cmlwdAorICAgICAgICA8aHR0cDovL3dlYmtpdC5vcmcvYi8yMTYxOTg+CisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS82ODAzNTk1MD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBEdWUgdG8gYSBtaXN0cmFuc2xhdGlvbiBvZiBldmFsdWF0ZUphdmFTY3Jp
cHQsIHdlIGFyZSB2ZW5kaW5nIGFuIEFQSSB3aGljaCBkb2VzIG5vdCBleHBlY3QKKyAgICAgICAg
dG8gcmVjZWl2ZSBuaWwgYXMgYSB2YWxpZCByZXN1bHQgdmFsdWUuIFRoaXMgY2hhbmdlIGZpeGVz
IHRoZSBjcmFzaCwgYnV0IGRvZXMgbm90IHlldCBmaXgKKyAgICAgICAgdGhlIEFQSSB0byBoYXZl
IHRoZSBjb3JyZWN0IHNpZ25hdHVyZS4gVGhhdCB3aWxsIGNvbWUgaW4gYSBsYXRlciBwYXRjaC4K
KworICAgICAgICBUbyBmaXggdGhlIGNyYXNoLCB3ZSBuZWVkIHRvIHByb2R1Y2UgYSB2YWxpZCBS
ZXN1bHQ8QW55LCBFcnJvcj4gdG8gcGFzcyBiYWNrIHRvIGNsaWVudHMuCisgICAgICAgIEZvcnR1
bmF0ZWx5LCBpbnN0ZWFkIG9mIGludmVudGluZyBzb21ldGhpbmcgY2xldmVyLCB3ZSBjYW4ganVz
dCB1c2UgbmlsLiBJdCdzIHZhbGlkIHRvIGJveAorICAgICAgICBvcHRpb25hbCB2YWx1ZXMgaW50
byBBbnksIGFuZCBjbGllbnRzIGNhbiB0ZWNobmljYWxseSByZXRyaWV2ZSB0aGVtIHdpdGggdGhl
IHJpZ2h0IGR5bmFtaWMgY2FzdAorICAgICAgICBhcyB3ZWxsLiBTaW5jZSBjbGllbnQgY29kZSBt
dXN0IGJlIHVzaW5nIGR5bmFtaWMgY2FzdGluZyB0byBjb252ZXJ0IHRoZSByZXN1bHQgQW55IHRv
IGEgdXNhYmxlCisgICAgICAgIHR5cGUsIGFuZCBiZWNhdXNlIGluIHRoZSBjYXNlIHdoZXJlIHdl
IG5vdyByZXR1cm4gYSBuZXcgdmFsdWUgYXQgcnVudGltZSB3ZSB3b3VsZCBoYXZlIHByZXZpb3Vz
bHkKKyAgICAgICAgY3Jhc2hlZCwgdGhpcyBzaG91bGRuJ3QgaGF2ZSBhbnkgYmluYXJ5IGNvbXBh
dGliaWxpdHkgaW1wYWN0IGVpdGhlci4KKworICAgICAgICBUbyBiZXR0ZXIgdmFsaWRhdGUgdGhl
c2UgY2hhbmdlcywgSSBhbHNvIGFkZCBuZXcgdW5pdCB0ZXN0cyBmb3IgdGhlIGNvbnZlcnNpb24g
b2YgSmF2YVNjcmlwdAorICAgICAgICByZXN1bHRzIGludG8gU3dpZnQgdmFsdWVzLCBpbmNsdWRp
bmcgYSB0ZXN0IGZvciB0aGUgZGVwcmVjYXRlZCBBUEkuCisKKyAgICAgICAgKiBTd2lmdE92ZXJs
YXkvU3dpZnRPdmVybGF5L09iamVjdGl2ZUNCbG9ja0NvbnZlcnNpb25zLnN3aWZ0OiBBZGRlZC4g
Rm9yIGNsYXJpdHkgSSdtIGZhY3RvcmluZworICAgICAgICBoZWxwZXIgbWV0aG9kcyBpbnRvIGEg
c2luZ2xlIG5hbWVzcGFjZSwgYXMgaXQgYWxzbyBtYWtlcyBhIG5pY2UgcGxhY2UgdG8gZG9jdW1l
bnQgdGhlaXIgZXhwZWN0YXRpb25zLgorICAgICAgICAoT2JqZWN0aXZlQ0Jsb2NrQ29udmVyc2lv
bi5leGNsdXNpdmUuZXhjbHVzaXZlKF86KSk6IFRoaXMgaXMgcmVuYW1lZCBmcm9tIHRoZSBmcmVl
IGZ1bmN0aW9uLAorICAgICAgICAgICAgbWFrZVJlc3VsdEhhbmRsZXIoXzopLiBJdCBzdGlsbCBo
YXMgdGhlIHNhbWUgZmF0YWxFcnJvciAobm93IHByZWNvbmRpdGlvbikgYXMgYmVmb3JlLCBidXQK
KyAgICAgICAgICAgIGhvcGVmdWxseSBhIGJldHRlciBuYW1lIHRvIGNsYXJpZnkgdGhhdCBpdCBl
eHBlY3RzIGV4YWN0bHktb25lIHZhbHVlLgorICAgICAgICAoT2JqZWN0aXZlQ0Jsb2NrQ29udmVy
c2lvbnMuYm94aW5nTmlsQXNBbnlGb3JDb21wYXRpYmlsaXR5KF86KSk6IFRoaXMgaXMgYSB2YXJp
YW50IG9mIGV4Y2x1c2l2ZShfOikKKyAgICAgICAgICAgIHRoYXQgbWFrZXMgdGhlIHRyYWRlb2Zm
IG9mIGJveGluZyBhbnkgbmlsIHZhbHVlcyBhcyBBbnkgdG8gYXZvaWQgY3Jhc2hpbmcuIFRoaXMg
aXMgc3RpbGwgc2FmZSwKKyAgICAgICAgICAgIHNpbmNlIGFzIG1lbnRpb25lZCBvdXIgY2xpZW50
cyB3aWxsIG5lZWQgdG8gY2FzdCB0aGUgdmFsdWUgdGhleSByZWNpZXZlIHRvIGRvIGFueXRoaW5n
IHdpdGggaXQsCisgICAgICAgICAgICBhbmQgc2luY2UgdGhlIGRlcHJlY2F0ZWQgQVBJIGV4cGVj
dHMgYEFueWAsIG5vIG9uZSBjb3VsZCBoYXZlIGJlZW4gc3VjY2Vzc2Z1bGx5IGNvbXBhcmluZyBp
dAorICAgICAgICAgICAgdG8gYG5pbGAgdG9kYXkgYW55d2F5cy4KKworICAgICAgICAqIFN3aWZ0
T3ZlcmxheS9UZXN0cy9KYXZhU2NyaXB0VG9Td2lmdFR5cGVDb252ZXJzaW9ucy5zd2lmdDogQWRk
ZWQuCisgICAgICAgIChKYXZhU2NyaXB0VG9Td2lmdENvbnZlcnNpb25zLnNldFVwKTogQ29uc3Ry
dWN0IGEgbmV3IHdlYiB2aWV3LCBhbmQgYWRkIGl0IHRvIGEgd2luZG93IHNvIHRoYXQgaXQgaXMK
KyAgICAgICAgICAgIGluIGFuIGV4cGVjdGVkIHN0YXRlLiBJJ20gdXNpbmcgYWJvdXQ6Ymxhbmsg
YXMgdGhlIFVSTCwgc2luY2UgcGFnZSBjb250ZW50IGRvZXNuJ3QgbWF0dGVyIGZvcgorICAgICAg
ICAgICAgdGhlc2UgdGVzdHMgYW5kIEkgd2FudCB0aGUgd2ViIGNvbnRlbnQgdG8gYmUgcmVhZHkg
aW1tZWRpYXRlbHkuCisgICAgICAgIChKYXZhU2NyaXB0VG9Td2lmdENvbnZlcnNpb25zLnRlYXJE
b3duKTogSnVzdCBwZXJmb3JtIHNvbWUgd2luZG93IGNsZWFudXAuCisgICAgICAgIChKYXZhU2Ny
aXB0VG9Td2lmdENvbnZlcnNpb25zLmV2YWx1YXRlSmF2YVNjcmlwdChfOmFuZEV4cGVjdDopKTog
SGVscGVyIG1ldGhvZCB0byBldmFsdWF0ZSBzY3JpcHQgYW5kCisgICAgICAgICAgICBjaGVjayBp
dHMgcmVzdWx0LiBJJ20gdXNpbmcgU3RyaW5nLmRlYnVnRGVzY3JpcHRpb24gYmVjYXVzZSBpdCBl
c2NhcGVzIHF1b3RlcyBhbmQgc3BlY2lhbCBjaGFyYWN0ZXJzCisgICAgICAgICAgICB3aGljaCBt
YWtlcyB0aGUgcmVhZG91dCBlYXNpZXIgdG8gcGFyc2UuCisgICAgICAgIChKYXZhU2NyaXB0VG9T
d2lmdENvbnZlcnNpb25zLnRlc3ROdWxsKTogSmF2YVNjcmlwdCdzIG51bGwgaXMgYWN0dWFsbHkg
bWFwcGVkIHRvIE5TTnVsbCwgbm90IG5pbC4KKyAgICAgICAgKEphdmFTY3JpcHRUb1N3aWZ0Q29u
dmVyc2lvbnMudGVzdEludGVnZXIpOiBTb21lIHN0YW5kYXJkIHR5cGUgY29lcmNpb24gdGVzdHMu
IFRoZSB1bmRlcmx5aW5nIHZhbHVlIGZvcgorICAgICAgICAgICAgYWxsIG51bWJlciB0eXBlcyBz
aG91bGQgYmUgTlNOdW1iZXIsIHNvIHRoaXMgaXMgYWN0dWFsbHkgY2hlY2sgYWdhaW5zdCBhIGZs
b2F0IG9yIGludGVnZXIgdHlwZQorICAgICAgICAgICAgd2l0aG91dCBpc3N1ZS4KKyAgICAgICAg
KEphdmFTY3JpcHRUb1N3aWZ0Q29udmVyc2lvbnMudGVzdERlY2ltYWwpOiBEaXR0by4KKyAgICAg
ICAgKEphdmFTY3JpcHRUb1N3aWZ0Q29udmVyc2lvbnMudGVzdEJvb2xlYW4pOiBEaXR0by4KKyAg
ICAgICAgKEphdmFTY3JpcHRUb1N3aWZ0Q29udmVyc2lvbnMudGVzdFN0cmluZyk6IERpdHRvLgor
ICAgICAgICAoSmF2YVNjcmlwdFRvU3dpZnRDb252ZXJzaW9ucy50ZXN0QXJyYXkpOiBEaXR0by4K
KyAgICAgICAgKEphdmFTY3JpcHRUb1N3aWZ0Q29udmVyc2lvbnMudGVzdERpY3Rpb25hcnkpOiBE
aXR0bywgb25seSB5b3UgY2FuJ3QgZXZhbHVhdGUgYW4gb2JqZWN0IGxpdGVyYWwgZGlyZWN0bHkK
KyAgICAgICAgICAgIHNvIEkgbmVlZCB0byBzdG9yZSBpdCBpbiBhIHRlbXBvcmFyeSBsb2NhdGlv
biBmaXJzdC4KKyAgICAgICAgKEphdmFTY3JpcHRUb1N3aWZ0Q29udmVyc2lvbnMudGVzdFVuZGVm
aW5lZCk6IFRlc3Qgb3VyIGJveGluZyBvZiBuaWwuIFRoZSBleGFjdCB2YWx1ZSBtYXR0ZXJzIGxl
c3MgdGhhbgorICAgICAgICAgICAgbm90IGNyYXNoaW5nIGF0IGFsbC4KKworICAgICAgICAqIFN3
aWZ0T3ZlcmxheS9XZWJLaXRTd2lmdE92ZXJsYXkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajog
QWRkZWQgbmV3IGZpbGVzIHRvIHByb2plY3QuIEkga2VwdCB0aGUKKyAgICAgICAgICAgIG5ldyB0
ZXN0IGZpbGUgYW5kIGhlbHBlciBmaWxlcyB3aXRoaW4gdGhlIFN3aWZ0T3ZlcmxheSBncm91cCwg
YmVjYXVzZSB0aGV5IGRvIG5vdCBjb250cmlidXRlIGFueSBBUEkuCisKKyAgICAgICAgKiBVSVBy
b2Nlc3MvQVBJL0NvY29hL1dlYktpdFN3aWZ0T3ZlcmxheS5zd2lmdDoKKyAgICAgICAgKFdLV2Vi
Vmlldy5jYWxsQXN5bmNKYXZhU2NyaXB0KF86YXJndW1lbnRzOmluOmluOmNvbXBsZXRpb25IYW5k
bGVyOikpOiBTd2l0Y2ggdG8gYSBjb252ZXJzaW9uIHdoaWNoIGRvZXMKKyAgICAgICAgICAgIG5v
dCB0cmFwIG9uIG5pbC4KKyAgICAgICAgKFdLV2ViVmlldy5jcmVhdGVQREYoXzpjb21wbGV0aW9u
SGFuZGxlcjopKTogVXBkYXRlZCB0byB1c2UgbmV3IGhlbHBlciBtZXRob2QgbmFtZS4KKyAgICAg
ICAgKFdLV2ViVmlldy5jcmVhdGVXZWJBcmNoaXZlRGF0YShfOikpOiBEaXR0by4KKyAgICAgICAg
KFdLV2ViVmlldy5ldmFsdWF0ZUphdmFTY3JpcHQoXzppbjppbjpjb21wbGV0aW9uSGFuZGxlcjpF
cnJvcjopKTogU2VlIGFib3ZlLgorICAgICAgICAobWFrZVJlc3VsdEhhbmRsZXIoXzopOiBUaGlz
IGhhcyBiZWVuIHN1YnN1bWVkIGJ5IE9iakNCbG9ja0NvbnZlcnNpb25zLgorCiAyMDIwLTA5LTAx
ICBLYXRlIENoZW5leSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUuY29tPgogCiAgICAgICAgIFBh
c3MgdGhlIGNvcnJlY3QgZGF0YSBzaXplIGZvciB0aGUgU2hhcmVkTWVtb3J5OjpIYW5kbGUgaW4g
V2ViQ29tcGlsZWRDb250ZW50UnVsZUxpc3REYXRhOjplbmNvZGUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvU3dpZnRPdmVybGF5L1N3aWZ0T3ZlcmxheS9PYmplY3RpdmVDQmxvY2tDb252ZXJz
aW9ucy5zd2lmdCBiL1NvdXJjZS9XZWJLaXQvU3dpZnRPdmVybGF5L1N3aWZ0T3ZlcmxheS9PYmpl
Y3RpdmVDQmxvY2tDb252ZXJzaW9ucy5zd2lmdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41NTJhYzZmZDliZTg2MmJj
NzQ4ODQxZTNlNzMzYWY3NmUyNTAzYTk5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktp
dC9Td2lmdE92ZXJsYXkvU3dpZnRPdmVybGF5L09iamVjdGl2ZUNCbG9ja0NvbnZlcnNpb25zLnN3
aWZ0CkBAIC0wLDAgKzEsODcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAq
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisvLy8gQSBmYW1pbHkgb2YgY29udmVy
c2lvbnMgZm9yIHRyYW5zbGF0aW5nIGJldHdlZW4gU3dpZnQgYmxvY2tzIGV4cGVjdGluZyBhIGBS
ZXN1bHQ8ViwgRXJyb3I+YCBhbmQKKy8vLyBPYmplY3RpdmUtQyBjYWxsYmFja3Mgb2YgdGhlIGZv
cm0gYChUPywgRXJyb3I/KWAuCisvLy8KKy8vLyBEZXBlbmRpbmcgb24gdGhlIHNlbWFudGljcyBv
ZiB0aGUgT2JqZWN0aXZlLUMgQVBJLCBvbmx5IG9uZSBvZiB0aGVzZSBjb252ZXJzaW9ucyBpcyBh
cHByb3ByaWF0ZS4KKy8vLyAtIElmIHRoZSBPYmplY3RpdmUtQyBibG9jayBleHBlY3RzIHRvIGJl
IGNhbGxlZCB3aXRoIGV4YWN0bHkgb25lIG5vbi1udWxsIGFyZ3VtZW50LCB1c2UgdGhlCisvLy8g
YGV4Y2x1c2l2ZShfOilgIGNvbnZlcnNpb24uCisvLy8gLSBJZiB0aGUgT2JqZWN0aXZlLUMgYmxv
Y2sgY2FuIGJlIGNhbGxlZCB3aXRoIG9uZSBvciB6ZXJvIG5vbi1udWxsIGFyZ3VtZW50cywgdXNl
IHRoZQorLy8vIGB0cmVhdE5pbEFzU3VjY2Vzc2AgY29udmVyc2lvbi4KKy8vLyAtIElmIHRoZSBP
YmplY3RpdmUtQyBibG9jayBjYW4gYmUgY2FsbGVkIHdpdGggdHdvIG5vbi1udWxsIHZhbHVlcywg
aXQgaXMgaW5lbGlnaWJsZSBmb3IKKy8vLyBjb252ZXJzaW9uIHRvIGEgYFJlc3VsdGAuCisvLy8g
LSBgYm94aW5nTmlsQXNBbnlGb3JDb21wYXRpYmlsaXR5YCBleGlzdHMgYXMgYSB3b3JrYXJvdW5k
IGZvciBodHRwOi8vd2Via2l0Lm9yZy9iLzIxNjE5OCwgYW5kCisvLy8gc2hvdWxkIG5vdCBiZSB1
c2VkIGJ5IG5ldyBjb2RlLgorZW51bSBPYmpDQmxvY2tDb252ZXJzaW9uIHsKKyAgICAvLy8gQ29u
dmVydHMgYSBibG9jayBmcm9tIGAoUmVzdWx0PFZhbHVlLCBFcnJvcj4pIC0+IFZvaWRgIHRvIGAo
VmFsdWU/LCBFcnJvcj8pIC0+IFZvaWRgLgorICAgIC8vLworICAgIC8vLyBUaGUgcmVzdWx0IGJs
b2NrIG11c3QgYmUgY2FsbGVkIHdpdGggZXhhY3RseSBvbmUgbm9uLW51bGwgYXJndW1lbnQuIElm
IGJvdGggYXJndW1lbnRzIGFyZQorICAgIC8vLyBub24tbnVsbCB0aGVuIGBoYW5kbGVyYCB3aWxs
IGJlIGNhbGxlZCB3aXRoIGAuc3VjY2VzcyhUKWAuIElmIGJvdGggYXJndW1lbnRzIGFyZSBgbmls
YAorICAgIC8vLyB0aGUgY29udmVyc2lvbiB3aWxsIHRyYXAuCisgICAgc3RhdGljIGZ1bmMgZXhj
bHVzaXZlPFZhbHVlPihfIGhhbmRsZXI6IEBlc2NhcGluZyAoUmVzdWx0PFZhbHVlLCBFcnJvcj4p
IC0+IFZvaWQpIC0+IChWYWx1ZT8sIEVycm9yPykgLT4gVm9pZCB7CisgICAgICAgIHJldHVybiB7
IHZhbHVlLCBlcnJvciBpbgorICAgICAgICAgICAgaWYgbGV0IHZhbHVlID0gdmFsdWUgeworICAg
ICAgICAgICAgICAgIGhhbmRsZXIoLnN1Y2Nlc3ModmFsdWUpKQorICAgICAgICAgICAgfSBlbHNl
IGlmIGxldCBlcnJvciA9IGVycm9yIHsKKyAgICAgICAgICAgICAgICBoYW5kbGVyKC5mYWlsdXJl
KGVycm9yKSkKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgcHJlY29uZGl0
aW9uRmFpbHVyZSgiQnVnIGluIFdlYktpdDogUmVjZWl2ZWQgbmVpdGhlciByZXN1bHQgb3IgZmFp
bHVyZS4iKQorICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorCisgICAgLy8vIENvbnZl
cnRzIGEgYmxvY2sgZnJvbSBgKFJlc3VsdDxWYWx1ZT8sIEVycm9yPikgLT4gVm9pZGAgdG8gYChW
YWx1ZT8sIEVycm9yKSAtPiBWb2lkYC4KKyAgICAvLy8KKyAgICAvLy8gVGhpcyBwZXJmb3JtcyB0
aGUgc2FtZSBjb252ZXJzaW9uIGFzIGBTZWxmLmV4Y2x1c2l2ZShfOilgLCBidXQgaWYgdGhlIHJl
c3VsdCBibG9jayBpcyBjYWxsZWQKKyAgICAvLy8gd2l0aCBgKG5pbCwgbmlsKWAgdGhlbiBgaGFu
ZGxlcmAgaXMgY2FsbGVkIHdpdGggYC5zdWNjZXNzKG5pbClgLgorICAgIHN0YXRpYyBmdW5jIHRy
ZWF0TmlsQXNTdWNjZXNzPFZhbHVlPihfIGhhbmRsZXI6IEBlc2NhcGluZyAoUmVzdWx0PFZhbHVl
PywgRXJyb3I+KSAtPiBWb2lkKSAtPiAoVmFsdWU/LCBFcnJvcj8pIC0+IFZvaWQgeworICAgICAg
ICByZXR1cm4geyB2YWx1ZSwgZXJyb3IgaW4KKyAgICAgICAgICAgIGlmIGxldCBlcnJvciA9IGVy
cm9yIHsKKyAgICAgICAgICAgICAgICBoYW5kbGVyKC5mYWlsdXJlKGVycm9yKSkKKyAgICAgICAg
ICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgaGFuZGxlciguc3VjY2Vzcyh2YWx1ZSkpCisg
ICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CisKKyAgICAvLy8gQ29udmVydHMgYSBibG9j
ayBmcm9tIGAoUmVzdWx0PFZhbHVlLCBFcnJvcj4pIC0+IFZvaWRgIHRvIGAoVmFsdWU/LCBFcnJv
cikgLT4gVm9pZGAuCisgICAgLy8vCisgICAgLy8vIFRoaXMgcGVyZm9ybXMgdGhlIHNhbWUgY29u
dmVyc2lvbiBhcyBgU2VsZi5leGNsdXNpdmUoXzopYCwgYnV0IGlmIHRoZSByZXN1bHQgYmxvY2sg
aXMgY2FsbGVkCisgICAgLy8vIHdpdGggYChuaWwsIG5pbClgIHRoZW4gYGhhbmRsZXJgIGlzIGNh
bGxlZCB3aXRoIGAuc3VjY2VzcyhPcHRpb25hbDxBbnk+Lm5vbmUgYXMgQW55KWAuIFRoaXMKKyAg
ICAvLy8gaXMgYSBjb21wYXRpYmlsaXR5IGJlaGF2aW9yIGZvciBodHRwOi8vd2Via2l0Lm9yZy9i
LzIxNjE5OCwgYW5kIHNob3VsZCBub3QgYmUgYWRvcHRlZCBieQorICAgIC8vLyBuZXcgY29kZS4K
KyAgICBzdGF0aWMgZnVuYyBib3hpbmdOaWxBc0FueUZvckNvbXBhdGliaWxpdHkoXyBoYW5kbGVy
OiBAZXNjYXBpbmcgKFJlc3VsdDxBbnksIEVycm9yPikgLT4gVm9pZCkgLT4gKEFueT8sIEVycm9y
PykgLT4gVm9pZCB7CisgICAgICAgIHJldHVybiB7IHZhbHVlLCBlcnJvciBpbgorICAgICAgICAg
ICAgaWYgbGV0IGVycm9yID0gZXJyb3IgeworICAgICAgICAgICAgICAgIGhhbmRsZXIoLmZhaWx1
cmUoZXJyb3IpKQorICAgICAgICAgICAgfSBlbHNlIGlmIGxldCBzdWNjZXNzID0gdmFsdWUgewor
ICAgICAgICAgICAgICAgIGhhbmRsZXIoLnN1Y2Nlc3Moc3VjY2VzcykpCisgICAgICAgICAgICB9
IGVsc2UgeworICAgICAgICAgICAgICAgIGhhbmRsZXIoLnN1Y2Nlc3MoT3B0aW9uYWw8QW55Pi5u
b25lIGFzIEFueSkpCisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9Cit9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1N3aWZ0T3ZlcmxheS9UZXN0cy9KYXZhU2NyaXB0VG9Td2lmdFR5
cGVDb252ZXJzaW9ucy5zd2lmdCBiL1NvdXJjZS9XZWJLaXQvU3dpZnRPdmVybGF5L1Rlc3RzL0ph
dmFTY3JpcHRUb1N3aWZ0VHlwZUNvbnZlcnNpb25zLnN3aWZ0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZiMmNkYTI5
ZTRkNDM1NWFlOWM1YzE2MjJhNjRlZWRlNzEzNTIwOTYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L1N3aWZ0T3ZlcmxheS9UZXN0cy9KYXZhU2NyaXB0VG9Td2lmdFR5cGVDb252ZXJz
aW9ucy5zd2lmdApAQCAtMCwwICsxLDEyMyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRP
UlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ
RUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MK
KyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB
QklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgor
ICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK2ltcG9ydCBYQ1Rlc3QK
K2ltcG9ydCBXZWJLaXQKKworZmluYWwgY2xhc3MgSmF2YVNjcmlwdFRvU3dpZnRDb252ZXJzaW9u
cyA6IFhDVGVzdENhc2UgeworICAgICNpZiBvcyhtYWNPUykKKyAgICBsZXQgd2luZG93ID0gTlNX
aW5kb3coKQorICAgICNlbHNlaWYgb3MoaU9TKQorICAgIGxldCB3aW5kb3cgPSBVSVdpbmRvdygp
CisgICAgI2VuZGlmCisKKyAgICBsZXQgd2ViVmlldyA9IFdLV2ViVmlldyhmcmFtZTogQ0dSZWN0
KHg6IDAsIHk6IDAsIHdpZHRoOiAzMjAsIGhlaWdodDogNDgwKSkKKworICAgIG92ZXJyaWRlIGZ1
bmMgc2V0VXAoKSB7CisgICAgICAgICNpZiBvcyhtYWNPUykKKyAgICAgICAgd2luZG93LmNvbnRl
bnRWaWV3Py5hZGRTdWJ2aWV3KHdlYlZpZXcpCisgICAgICAgICNlbHNlCisgICAgICAgIHdpbmRv
dy5pc0hpZGRlbiA9IGZhbHNlCisgICAgICAgIHdpbmRvdy5hZGRTdWJ2aWV3KHdlYlZpZXcpCisg
ICAgICAgICNlbmRpZgorCisgICAgICAgIHdlYlZpZXcubG9hZChVUkxSZXF1ZXN0KHVybDogVVJM
KHN0cmluZzogImFib3V0OmJsYW5rIikhKSkKKyAgICB9CisKKyAgICBvdmVycmlkZSBmdW5jIHRl
YXJEb3duKCkgeworICAgICAgICAjaWYgb3MobWFjT1MpCisgICAgICAgIHdpbmRvdy5vcmRlck91
dChuaWwpCisgICAgICAgICNlbHNlCisgICAgICAgIHdpbmRvdy5pc0hpZGRlbiA9IHRydWUKKyAg
ICAgICAgI2VuZGlmCisgICAgfQorCisgICAgZnVuYyBldmFsdWF0ZUphdmFTY3JpcHQ8VCA6IEVx
dWF0YWJsZT4oXyBqYXZhU2NyaXB0OiBTdHJpbmcsIGFuZEV4cGVjdCBleHBlY3RlZFZhbHVlOiBU
KSB7CisgICAgICAgIGxldCBldmFsdWF0aW9uRXhwZWN0YXRpb24gPSBzZWxmLmV4cGVjdGF0aW9u
KGRlc2NyaXB0aW9uOiAiRXZhbHVhdGlvbiBvZiBcKGphdmFTY3JpcHQuZGVidWdEZXNjcmlwdGlv
bikiKQorICAgICAgICB3ZWJWaWV3LmV2YWx1YXRlSmF2YVNjcmlwdChqYXZhU2NyaXB0LCBpbjog
bmlsLCBpbjogLmRlZmF1bHRDbGllbnQpIHsgcmVzdWx0IGluCisgICAgICAgICAgICBkbyB7Cisg
ICAgICAgICAgICAgICAgbGV0IGFjdHVhbFZhbHVlID0gdHJ5IHJlc3VsdC5nZXQoKSBhcz8gVAor
ICAgICAgICAgICAgICAgIFhDVEFzc2VydEVxdWFsKGFjdHVhbFZhbHVlLCBleHBlY3RlZFZhbHVl
KQorICAgICAgICAgICAgICAgIGV2YWx1YXRpb25FeHBlY3RhdGlvbi5mdWxmaWxsKCkKKyAgICAg
ICAgICAgIH0gY2F0Y2ggeworICAgICAgICAgICAgICAgIFhDVEZhaWwoIkV2YWx1YXRpbmcgXChq
YXZhU2NyaXB0LmRlYnVnRGVzY3JpcHRpb24pIGZhaWxlZCB3aXRoIGVycm9yOiBcKGVycm9yKSIp
CisgICAgICAgICAgICB9CisgICAgICAgIH0KKworICAgICAgICB3YWl0KGZvcjogW2V2YWx1YXRp
b25FeHBlY3RhdGlvbl0sIHRpbWVvdXQ6IDMwKQorICAgIH0KKworICAgIGZ1bmMgdGVzdE51bGwo
KSB7CisgICAgICAgIGV2YWx1YXRlSmF2YVNjcmlwdCgibnVsbCIsIGFuZEV4cGVjdDogTlNOdWxs
KCkpCisgICAgfQorCisgICAgZnVuYyB0ZXN0SW50ZWdlcigpIHsKKyAgICAgICAgZXZhbHVhdGVK
YXZhU2NyaXB0KCIxMiIsIGFuZEV4cGVjdDogMTIgYXMgSW50KQorICAgIH0KKworICAgIGZ1bmMg
dGVzdERlY2ltYWwoKSB7CisgICAgICAgIGV2YWx1YXRlSmF2YVNjcmlwdCgiMTIuMCIsIGFuZEV4
cGVjdDogMTIgYXMgRmxvYXQpCisgICAgfQorCisgICAgZnVuYyB0ZXN0Qm9vbGVhbigpIHsKKyAg
ICAgICAgZXZhbHVhdGVKYXZhU2NyaXB0KCJ0cnVlIiwgYW5kRXhwZWN0OiB0cnVlKQorICAgICAg
ICBldmFsdWF0ZUphdmFTY3JpcHQoImZhbHNlIiwgYW5kRXhwZWN0OiBmYWxzZSkKKyAgICB9CisK
KyAgICBmdW5jIHRlc3RTdHJpbmcoKSB7CisgICAgICAgIGV2YWx1YXRlSmF2YVNjcmlwdCgjIiJI
ZWxsbywgd29ybGQhIiIjLCBhbmRFeHBlY3Q6ICJIZWxsbywgd29ybGQhIikKKyAgICB9CisKKyAg
ICBmdW5jIHRlc3RBcnJheSgpIHsKKyAgICAgICAgLy8gVGhpcyB1c2VzIFtBbnlIYXNoYWJsZV0s
IGluc3RlYWQgb2YgW0FueV0sIHNvIHdlIGNhbiBwZXJmb3JtIGFuIGVxdWFsaXR5IGNoZWNrIGZv
ciB0ZXN0aW5nLgorICAgICAgICBldmFsdWF0ZUphdmFTY3JpcHQoIyJbIDEsIDIsICJjYXQiIF0i
IywgYW5kRXhwZWN0OiBbMSwgMiwgImNhdCJdIGFzIFtBbnlIYXNoYWJsZV0pCisgICAgfQorCisg
ICAgZnVuYyB0ZXN0RGljdGlvbmFyeSgpIHsKKyAgICAgICAgLy8gVGhpcyB1c2VzIFtBbnlIYXNo
YWJsZTpBbnlIYXNoYWJsZV0sIGluc3RlYWQgb2YgW0FueUhhc2hhYmxlOkFueV0sIHNvIHdlIGNh
biBwZXJmb3JtIGFuCisgICAgICAgIC8vIGVxdWFsaXR5IGNoZWNrIGZvciB0ZXN0aW5nLiBBbiBv
YmplY3TigJlzIGtleXMgYXJlIGFsd2F5cyBjb252ZXJ0ZWQgdG8gc3RyaW5ncywgc28gZXZlbgor
ICAgICAgICAvLyB0aG91Z2ggd2UgaW5wdXQgYDE6YCB3ZSBleHBlY3QgYCIxIjpgIGJhY2suCisg
ICAgICAgIGxldCByZXN1bHQ6IFtBbnlIYXNoYWJsZTpBbnlIYXNoYWJsZV0gPSBbIjEiOiAyLCAi
Y2F0IjogImRvZyJdCisgICAgICAgIGV2YWx1YXRlSmF2YVNjcmlwdCgjImNvbnN0IHZhbHVlID0g
eyAxOiAyLCAiY2F0IjogImRvZyIgfTsgdmFsdWUiIywgYW5kRXhwZWN0OiByZXN1bHQpCisgICAg
fQorCisgICAgZnVuYyB0ZXN0VW5kZWZpbmVkKCkgeworICAgICAgICBsZXQgZXZhbHVhdGlvbkV4
cGVjdGF0aW9uID0gc2VsZi5leHBlY3RhdGlvbihkZXNjcmlwdGlvbjogIkV2YWx1YXRpb24gb2Yg
XCJ1bmRlZmluZWRcIiB1c2luZyBkZXByZWNhdGVkIEFQSSIpCisgICAgICAgIHdlYlZpZXcuZXZh
bHVhdGVKYXZhU2NyaXB0KCJ1bmRlZmluZWQiLCBpbjogbmlsLCBpbjogLmRlZmF1bHRDbGllbnQp
IHsgKHJlc3VsdDogUmVzdWx0PEFueSwgRXJyb3I+KSBpbgorICAgICAgICAgICAgZG8geworICAg
ICAgICAgICAgICAgIGxldCB2YWx1ZSA9IHRyeSByZXN1bHQuZ2V0KCkKKyAgICAgICAgICAgICAg
ICBpZiBsZXQgb3B0aW9uYWxWYWx1ZSA9IHZhbHVlIGFzPyBBbnk/LCBvcHRpb25hbFZhbHVlID09
IG5pbCB7CisgICAgICAgICAgICAgICAgICAgIGV2YWx1YXRpb25FeHBlY3RhdGlvbi5mdWxmaWxs
KCkKKyAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICBYQ1RGYWls
KCJWYWx1ZSBkaWQgbm90IGNvbnRhaW4gbmlsIikKKyAgICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICB9IGNhdGNoIHsKKyAgICAgICAgICAgICAgICBYQ1RGYWlsKCJFdmFsdWF0aW5nIFwidW5k
ZWZpbmVkXCIgZmFpbGVkIHdpdGggZXJyb3I6IFwoZXJyb3IpIikKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgfQorCisgICAgICAgIHdhaXQoZm9yOiBbZXZhbHVhdGlvbkV4cGVjdGF0aW9uXSwgdGlt
ZW91dDogMzApCisgICAgfQorfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Td2lmdE92ZXJs
YXkvV2ViS2l0U3dpZnRPdmVybGF5Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2Uv
V2ViS2l0L1N3aWZ0T3ZlcmxheS9XZWJLaXRTd2lmdE92ZXJsYXkueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagppbmRleCA1MjAxNzU2MWJhNWFlNTYyNjA3NTM0MGIyMzU5NDM5ZWE1ZjA1MDdmLi5l
MDM4NGZkYmMwZGNhNmQ0NDc0ZjM4M2Y1Zjg3NDRjY2MyMTM0MDNiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1N3aWZ0T3ZlcmxheS9XZWJLaXRTd2lmdE92ZXJsYXkueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0L1N3aWZ0T3ZlcmxheS9XZWJLaXRTd2lmdE92
ZXJsYXkueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTMsNiArMTMsMTAgQEAKIAkJQjNB
NUQzOTAyM0Y3OEY1NDAwQjE3NzI3IC8qIFdlYktpdFRlc3RzLnN3aWZ0IGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjNBNUQzODgyM0Y3OEY1NDAwQjE3NzI3
IC8qIFdlYktpdFRlc3RzLnN3aWZ0ICovOyB9OwogCQlCM0E1RDM5MjIzRjc5MERCMDBCMTc3Mjcg
LyogV2ViS2l0U3dpZnRPdmVybGF5LnN3aWZ0IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQjNBNUQzOTEyM0Y3OTBEQjAwQjE3NzI3IC8qIFdlYktpdFN3aWZ0
T3ZlcmxheS5zd2lmdCAqLzsgfTsKIAkJQjNBNUQzOTMyM0Y3OTBEQjAwQjE3NzI3IC8qIFdlYktp
dFN3aWZ0T3ZlcmxheS5zd2lmdCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEIzQTVEMzkxMjNGNzkwREIwMEIxNzcyNyAvKiBXZWJLaXRTd2lmdE92ZXJsYXku
c3dpZnQgKi87IH07CisJCUIzQjhGRUNDMjUwMDkwQjEwMDYxNzJDQSAvKiBKYXZhU2NyaXB0VG9T
d2lmdFR5cGVDb252ZXJzaW9ucy5zd2lmdCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEIzQjhGRUNCMjUwMDkwQjEwMDYxNzJDQSAvKiBKYXZhU2NyaXB0VG9T
d2lmdFR5cGVDb252ZXJzaW9ucy5zd2lmdCAqLzsgfTsKKwkJQjNCOEZFQ0QyNTAwOTBCMTAwNjE3
MkNBIC8qIEphdmFTY3JpcHRUb1N3aWZ0VHlwZUNvbnZlcnNpb25zLnN3aWZ0IGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjNCOEZFQ0IyNTAwOTBCMTAwNjE3
MkNBIC8qIEphdmFTY3JpcHRUb1N3aWZ0VHlwZUNvbnZlcnNpb25zLnN3aWZ0ICovOyB9OworCQlC
M0I4RkVFRjI1MDJCQUEwMDA2MTcyQ0EgLyogT2JqZWN0aXZlQ0Jsb2NrQ29udmVyc2lvbnMuc3dp
ZnQgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCM0I4RkVF
RTI1MDJCQUEwMDA2MTcyQ0EgLyogT2JqZWN0aXZlQ0Jsb2NrQ29udmVyc2lvbnMuc3dpZnQgKi87
IH07CisJCUIzQjhGRUYwMjUwMkJBQTAwMDYxNzJDQSAvKiBPYmplY3RpdmVDQmxvY2tDb252ZXJz
aW9ucy5zd2lmdCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEIzQjhGRUVFMjUwMkJBQTAwMDYxNzJDQSAvKiBPYmplY3RpdmVDQmxvY2tDb252ZXJzaW9ucy5z
d2lmdCAqLzsgfTsKIC8qIEVuZCBQQlhCdWlsZEZpbGUgc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQ
QlhDb250YWluZXJJdGVtUHJveHkgc2VjdGlvbiAqLwpAQCAtNDYsNiArNTAsOCBAQAogCQlCM0E1
RDM5ODIzRjc5MEUxMDBCMTc3MjcgLyogV2ViS2l0U3dpZnRPdmVybGF5VGVzdHMueGNjb25maWcg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0Lnhj
Y29uZmlnOyBwYXRoID0gV2ViS2l0U3dpZnRPdmVybGF5VGVzdHMueGNjb25maWc7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIzQTVEMzk5MjNGNzkwRTEwMEIxNzcyNyAvKiBpbnN0YWxs
LXN3aWZ0bW9kdWxlcy5zaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHRleHQuc2NyaXB0LnNoOyBwYXRoID0gImluc3RhbGwtc3dpZnRtb2R1bGVzLnNo
Ijsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjNBNUQzOUEyM0Y3OTBFNzAwQjE3NzI3
IC8qIFdlYktpdFN3aWZ0T3ZlcmxheVRlc3RzLUluZm8ucGxpc3QgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LnBsaXN0LnhtbDsgcGF0aCA9ICJX
ZWJLaXRTd2lmdE92ZXJsYXlUZXN0cy1JbmZvLnBsaXN0Ijsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJQjNCOEZFQ0IyNTAwOTBCMTAwNjE3MkNBIC8qIEphdmFTY3JpcHRUb1N3aWZ0VHlw
ZUNvbnZlcnNpb25zLnN3aWZ0ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5zd2lmdDsgcGF0aCA9IEphdmFTY3JpcHRUb1N3aWZ0VHlw
ZUNvbnZlcnNpb25zLnN3aWZ0OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCM0I4RkVF
RTI1MDJCQUEwMDA2MTcyQ0EgLyogT2JqZWN0aXZlQ0Jsb2NrQ29udmVyc2lvbnMuc3dpZnQgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LnN3aWZ0OyBwYXRoID0gT2JqZWN0aXZlQ0Jsb2NrQ29udmVyc2lvbnMuc3dpZnQ7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAvKiBFbmQgUEJYRmlsZVJlZmVyZW5jZSBzZWN0aW9uICovCiAK
IC8qIEJlZ2luIFBCWEZyYW1ld29ya3NCdWlsZFBoYXNlIHNlY3Rpb24gKi8KQEAgLTg2LDYgKzky
LDcgQEAKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCiAJCQkJQjNBNUQzOTky
M0Y3OTBFMTAwQjE3NzI3IC8qIGluc3RhbGwtc3dpZnRtb2R1bGVzLnNoICovLAorCQkJCUIzQjhG
RUVFMjUwMkJBQTAwMDYxNzJDQSAvKiBPYmplY3RpdmVDQmxvY2tDb252ZXJzaW9ucy5zd2lmdCAq
LywKIAkJCQlCM0E1RDM5MTIzRjc5MERCMDBCMTc3MjcgLyogV2ViS2l0U3dpZnRPdmVybGF5LnN3
aWZ0ICovLAogCQkJKTsKIAkJCW5hbWUgPSAiU3dpZnQgT3ZlcmxheSI7CkBAIC0xMDIsNiArMTA5
LDcgQEAKIAkJN0QyMDA3MDgyMkY0RUI3MjAwOERGNjQwIC8qIFRlc3RzICovID0gewogCQkJaXNh
ID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQlCM0I4RkVDQjI1MDA5MEIxMDA2MTcy
Q0EgLyogSmF2YVNjcmlwdFRvU3dpZnRUeXBlQ29udmVyc2lvbnMuc3dpZnQgKi8sCiAJCQkJQjNB
NUQzOUEyM0Y3OTBFNzAwQjE3NzI3IC8qIFdlYktpdFN3aWZ0T3ZlcmxheVRlc3RzLUluZm8ucGxp
c3QgKi8sCiAJCQkJQjNBNUQzODgyM0Y3OEY1NDAwQjE3NzI3IC8qIFdlYktpdFRlc3RzLnN3aWZ0
ICovLAogCQkJKTsKQEAgLTM0NCw2ICszNTIsNyBAQAogCQkJaXNhID0gUEJYU291cmNlc0J1aWxk
UGhhc2U7CiAJCQlidWlsZEFjdGlvbk1hc2sgPSAyMTQ3NDgzNjQ3OwogCQkJZmlsZXMgPSAoCisJ
CQkJQjNCOEZFRUYyNTAyQkFBMDAwNjE3MkNBIC8qIE9iamVjdGl2ZUNCbG9ja0NvbnZlcnNpb25z
LnN3aWZ0IGluIFNvdXJjZXMgKi8sCiAJCQkJQjNBNUQzOTIyM0Y3OTBEQjAwQjE3NzI3IC8qIFdl
YktpdFN3aWZ0T3ZlcmxheS5zd2lmdCBpbiBTb3VyY2VzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlG
b3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwpAQCAtMzUyLDYgKzM2MSw3IEBACiAJCQlp
c2EgPSBQQlhTb3VyY2VzQnVpbGRQaGFzZTsKIAkJCWJ1aWxkQWN0aW9uTWFzayA9IDIxNDc0ODM2
NDc7CiAJCQlmaWxlcyA9ICgKKwkJCQlCM0I4RkVGMDI1MDJCQUEwMDA2MTcyQ0EgLyogT2JqZWN0
aXZlQ0Jsb2NrQ29udmVyc2lvbnMuc3dpZnQgaW4gU291cmNlcyAqLywKIAkJCQlCM0E1RDM5MzIz
Rjc5MERCMDBCMTc3MjcgLyogV2ViS2l0U3dpZnRPdmVybGF5LnN3aWZ0IGluIFNvdXJjZXMgKi8s
CiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9IDA7CkBAIC0z
NjAsNiArMzcwLDcgQEAKIAkJCWlzYSA9IFBCWFNvdXJjZXNCdWlsZFBoYXNlOwogCQkJYnVpbGRB
Y3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsKIAkJCWZpbGVzID0gKAorCQkJCUIzQjhGRUNDMjUwMDkw
QjEwMDYxNzJDQSAvKiBKYXZhU2NyaXB0VG9Td2lmdFR5cGVDb252ZXJzaW9ucy5zd2lmdCBpbiBT
b3VyY2VzICovLAogCQkJCUIzQTVEMzhGMjNGNzhGNTQwMEIxNzcyNyAvKiBXZWJLaXRUZXN0cy5z
d2lmdCBpbiBTb3VyY2VzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHBy
b2Nlc3NpbmcgPSAwOwpAQCAtMzY4LDYgKzM3OSw3IEBACiAJCQlpc2EgPSBQQlhTb3VyY2VzQnVp
bGRQaGFzZTsKIAkJCWJ1aWxkQWN0aW9uTWFzayA9IDIxNDc0ODM2NDc7CiAJCQlmaWxlcyA9ICgK
KwkJCQlCM0I4RkVDRDI1MDA5MEIxMDA2MTcyQ0EgLyogSmF2YVNjcmlwdFRvU3dpZnRUeXBlQ29u
dmVyc2lvbnMuc3dpZnQgaW4gU291cmNlcyAqLywKIAkJCQlCM0E1RDM5MDIzRjc4RjU0MDBCMTc3
MjcgLyogV2ViS2l0VGVzdHMuc3dpZnQgaW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5
Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XZWJLaXRTd2lmdE92ZXJsYXkuc3dpZnQgYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV2ViS2l0U3dpZnRPdmVybGF5LnN3aWZ0CmluZGV4
IDg3NjMzNTNiM2VlZjI2MDU5YzA0ODRmOGEwNDJiOTcyNmE4ZjRlOTIuLjNhNjRkZTYwYmY3ZDBh
OTY0N2VlYjk0MDBiNzQ5MWVjOTExOWE5MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0FQSS9Db2NvYS9XZWJLaXRTd2lmdE92ZXJsYXkuc3dpZnQKKysrIGIvU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dlYktpdFN3aWZ0T3ZlcmxheS5zd2lmdApAQCAtMzYs
MzQgKzM2LDIyIEBAIGV4dGVuc2lvbiBXS1BERkNvbmZpZ3VyYXRpb24gewogQGF2YWlsYWJsZShp
T1MgMTQuMCwgbWFjT1MgMTAuMTYsICopCiBleHRlbnNpb24gV0tXZWJWaWV3IHsKICAgICBwdWJs
aWMgZnVuYyBjYWxsQXN5bmNKYXZhU2NyaXB0KF8gZnVuY3Rpb25Cb2R5OiBTdHJpbmcsIGFyZ3Vt
ZW50czogW1N0cmluZzpBbnldID0gWzpdLCBpbiBmcmFtZTogV0tGcmFtZUluZm8/ID0gbmlsLCBp
biBjb250ZW50V29ybGQ6IFdLQ29udGVudFdvcmxkLCBjb21wbGV0aW9uSGFuZGxlcjogKChSZXN1
bHQ8QW55LCBFcnJvcj4pIC0+IFZvaWQpPyA9IG5pbCkgewotICAgICAgICBfX2NhbGxBc3luY0ph
dmFTY3JpcHQoZnVuY3Rpb25Cb2R5LCBhcmd1bWVudHM6IGFyZ3VtZW50cywgaW5GcmFtZTogZnJh
bWUsIGluOiBjb250ZW50V29ybGQsIGNvbXBsZXRpb25IYW5kbGVyOiBjb21wbGV0aW9uSGFuZGxl
ci5tYXAobWFrZVJlc3VsdEhhbmRsZXIpKQorICAgICAgICBfX2NhbGxBc3luY0phdmFTY3JpcHQo
ZnVuY3Rpb25Cb2R5LCBhcmd1bWVudHM6IGFyZ3VtZW50cywgaW5GcmFtZTogZnJhbWUsIGluOiBj
b250ZW50V29ybGQsIGNvbXBsZXRpb25IYW5kbGVyOiBjb21wbGV0aW9uSGFuZGxlci5tYXAoT2Jq
Q0Jsb2NrQ29udmVyc2lvbi5ib3hpbmdOaWxBc0FueUZvckNvbXBhdGliaWxpdHkpKQogICAgIH0K
IAogICAgIHB1YmxpYyBmdW5jIGNyZWF0ZVBERihjb25maWd1cmF0aW9uOiBXS1BERkNvbmZpZ3Vy
YXRpb24gPSAuaW5pdCgpLCBjb21wbGV0aW9uSGFuZGxlcjogQGVzY2FwaW5nIChSZXN1bHQ8RGF0
YSwgRXJyb3I+KSAtPiBWb2lkKSB7Ci0gICAgICAgIF9fY3JlYXRlUERGKHdpdGg6IGNvbmZpZ3Vy
YXRpb24sIGNvbXBsZXRpb25IYW5kbGVyOiBtYWtlUmVzdWx0SGFuZGxlcihjb21wbGV0aW9uSGFu
ZGxlcikpCisgICAgICAgIF9fY3JlYXRlUERGKHdpdGg6IGNvbmZpZ3VyYXRpb24sIGNvbXBsZXRp
b25IYW5kbGVyOiBPYmpDQmxvY2tDb252ZXJzaW9uLmV4Y2x1c2l2ZShjb21wbGV0aW9uSGFuZGxl
cikpCiAgICAgfQogCiAgICAgcHVibGljIGZ1bmMgY3JlYXRlV2ViQXJjaGl2ZURhdGEoY29tcGxl
dGlvbkhhbmRsZXI6IEBlc2NhcGluZyAoUmVzdWx0PERhdGEsIEVycm9yPikgLT4gVm9pZCkgewot
ICAgICAgICBfX2NyZWF0ZVdlYkFyY2hpdmVEYXRhKGNvbXBsZXRpb25IYW5kbGVyOiBtYWtlUmVz
dWx0SGFuZGxlcihjb21wbGV0aW9uSGFuZGxlcikpCisgICAgICAgIF9fY3JlYXRlV2ViQXJjaGl2
ZURhdGEoY29tcGxldGlvbkhhbmRsZXI6IE9iakNCbG9ja0NvbnZlcnNpb24uZXhjbHVzaXZlKGNv
bXBsZXRpb25IYW5kbGVyKSkKICAgICB9CiAKICAgICBwdWJsaWMgZnVuYyBldmFsdWF0ZUphdmFT
Y3JpcHQoXyBqYXZhU2NyaXB0OiBTdHJpbmcsIGluIGZyYW1lOiBXS0ZyYW1lSW5mbz8gPSBuaWws
IGluIGNvbnRlbnRXb3JsZDogV0tDb250ZW50V29ybGQsIGNvbXBsZXRpb25IYW5kbGVyOiAoKFJl
c3VsdDxBbnksIEVycm9yPikgLT4gVm9pZCk/ID0gbmlsKSB7Ci0gICAgICAgIF9fZXZhbHVhdGVK
YXZhU2NyaXB0KGphdmFTY3JpcHQsIGluRnJhbWU6IGZyYW1lLCBpbjogY29udGVudFdvcmxkLCBj
b21wbGV0aW9uSGFuZGxlcjogY29tcGxldGlvbkhhbmRsZXIubWFwKG1ha2VSZXN1bHRIYW5kbGVy
KSkKKyAgICAgICAgX19ldmFsdWF0ZUphdmFTY3JpcHQoamF2YVNjcmlwdCwgaW5GcmFtZTogZnJh
bWUsIGluOiBjb250ZW50V29ybGQsIGNvbXBsZXRpb25IYW5kbGVyOiBjb21wbGV0aW9uSGFuZGxl
ci5tYXAoT2JqQ0Jsb2NrQ29udmVyc2lvbi5ib3hpbmdOaWxBc0FueUZvckNvbXBhdGliaWxpdHkp
KQogICAgIH0KIAogICAgIHB1YmxpYyBmdW5jIGZpbmQoXyBzdHJpbmc6IFN0cmluZywgY29uZmln
dXJhdGlvbjogV0tGaW5kQ29uZmlndXJhdGlvbiA9IC5pbml0KCksIGNvbXBsZXRpb25IYW5kbGVy
OiBAZXNjYXBpbmcgKFdLRmluZFJlc3VsdCkgLT4gVm9pZCkgewogICAgICAgICBfX2ZpbmQoc3Ry
aW5nLCB3aXRoOiBjb25maWd1cmF0aW9uLCBjb21wbGV0aW9uSGFuZGxlcjogY29tcGxldGlvbkhh
bmRsZXIpCiAgICAgfQogfQotCi1mdW5jIG1ha2VSZXN1bHRIYW5kbGVyPFN1Y2Nlc3MsIEZhaWx1
cmU+KF8gaGFuZGxlcjogQGVzY2FwaW5nIChSZXN1bHQ8U3VjY2VzcywgRmFpbHVyZT4pIC0+IFZv
aWQpIC0+IChTdWNjZXNzPywgRmFpbHVyZT8pIC0+IFZvaWQgewotICAgIHJldHVybiB7IHN1Y2Nl
c3MsIGZhaWx1cmUgaW4KLSAgICAgICAgaWYgbGV0IHN1Y2Nlc3MgPSBzdWNjZXNzIHsKLSAgICAg
ICAgICAgIGhhbmRsZXIoLnN1Y2Nlc3Moc3VjY2VzcykpCi0gICAgICAgIH0gZWxzZSBpZiBsZXQg
ZmFpbHVyZSA9IGZhaWx1cmUgewotICAgICAgICAgICAgaGFuZGxlciguZmFpbHVyZShmYWlsdXJl
KSkKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGZhdGFsRXJyb3IoIkJ1ZyBpbiBXZWJL
aXQ6IFJlY2VpdmVkIG5laXRoZXIgcmVzdWx0IG9yIGZhaWx1cmUuIikKLSAgICAgICAgfQotICAg
IH0KLX0K
</data>

          </attachment>
      

    </bug>

</bugzilla>