<?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>291062</bug_id>
          
          <creation_ts>2025-04-03 23:55:59 -0700</creation_ts>
          <short_desc>REGRESSION(292040@main): This was unrelated to the crash</short_desc>
          <delta_ts>2025-04-04 00:00:22 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>289634</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Commit Bot">commit-queue</reporter>
          <assigned_to name="WebKit Commit Bot">commit-queue</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2108803</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2025-04-03 23:55:59 -0700</bug_when>
    <thetext>https://commits.webkit.org/292040@main introduced a regression:
This was unrelated to the crash

This is an automatic bug report generated by webkitbot. If this bug
report was created because of a flaky test, please file a bug for the flaky
test (if we don&apos;t already have one on file) and dup this bug against that bug
so that we can track how often these flaky tests fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2108805</commentid>
    <comment_count>1</comment_count>
      <attachid>474826</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2025-04-03 23:56:06 -0700</bug_when>
    <thetext>Created attachment 474826
REVERT of 292040@main

Any committer can land this patch automatically by marking it commit-queue+.  The commit-queue will build and test the patch before landing to ensure that the revert will be successful.  This process takes approximately 15 minutes.

If you would like to land the revert faster, you can use the following command:

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2108806</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2025-04-03 23:59:54 -0700</bug_when>
    <thetext>Committed 293222@main (594c5f47475c): &lt;https://commits.webkit.org/293222@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 474826.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2108807</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2025-04-04 00:00:22 -0700</bug_when>
    <thetext>&lt;rdar://problem/148576104&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>474826</attachid>
            <date>2025-04-03 23:56:06 -0700</date>
            <delta_ts>2025-04-03 23:59:54 -0700</delta_ts>
            <desc>REVERT of 292040@main</desc>
            <filename>bug-291062-20250404065605.patch</filename>
            <type>text/plain</type>
            <size>46463</size>
            <attacher name="WebKit Commit Bot">commit-queue</attacher>
            
              <data encoding="base64">RnJvbSBlY2ZkNTgwMTAzN2I1ODUxYTFlMWI5YTViN2M4YjQ0OWQ2YWE4NTE5IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBDb21taXQgUXVldWUgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3Jn
PgpEYXRlOiBGcmksIDQgQXByIDIwMjUgMDY6NTY6MDMgKzAwMDAKU3ViamVjdDogW1BBVENIXSBV
bnJldmlld2VkLCByZXZlcnRpbmcgMjkyMDQwQG1haW4uCiBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjkxMDYyCgpUaGlzIHdhcyB1bnJlbGF0ZWQgdG8gdGhlIGNyYXNo
CgpSZXZlcnRlZCBjaGFuZ2VzZXQ6CgoiVW5yZXZpZXdlZCwgcmV2ZXJ0aW5nIDI5MjAwOEBtYWlu
LiIKaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI4OTYzNApodHRwczov
L2NvbW1pdHMud2Via2l0Lm9yZy8yOTIwNDBAbWFpbgotLS0KIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9kZmcvREZHT1NSRXhpdC5jcHAgICAgICB8ICAgMyArLQogLi4uL0phdmFTY3JpcHRDb3JlL2Rm
Zy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHAgIHwgIDc1ICsrKystLS0KIC4uLi9kZmcvREZHU3BlY3Vs
YXRpdmVKSVQ2NC5jcHAgICAgICAgICAgICAgICB8ICA4MSArKysrLS0tLQogLi4uL0phdmFTY3Jp
cHRDb3JlL2Z0bC9GVExPU1JFeGl0Q29tcGlsZXIuY3BwIHwgICAzICstCiBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvaml0L0Fzc2VtYmx5SGVscGVycy5jcHAgfCAgMzYgKystLQogLi4uL0phdmFTY3Jp
cHRDb3JlL2ppdC9KSVRCaXRBbmRHZW5lcmF0b3IuY3BwIHwgICA0ICstCiAuLi4vSmF2YVNjcmlw
dENvcmUvaml0L0pJVEJpdE9yR2VuZXJhdG9yLmNwcCAgfCAgIDggKy0KIC4uLi9KYXZhU2NyaXB0
Q29yZS9qaXQvSklUQml0WG9yR2VuZXJhdG9yLmNwcCB8ICAgNiArLQogU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ppdC9KSVREaXZHZW5lcmF0b3IuY3BwIHwgICAxIC0KIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9qaXQvSklUSW5saW5lcy5oICAgICAgICB8ICAgMyArLQogLi4uL2ppdC9KSVRMZWZ0U2hp
ZnRHZW5lcmF0b3IuY3BwICAgICAgICAgICAgIHwgIDI0ICsrLQogU291cmNlL0phdmFTY3JpcHRD
b3JlL2ppdC9KSVROZWdHZW5lcmF0b3IuY3BwIHwgIDExICstCiBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvaml0L0pJVE9wY29kZXMuY3BwICAgICAgfCAgIDYgKy0KIC4uLi9qaXQvSklUUmlnaHRTaGlm
dEdlbmVyYXRvci5jcHAgICAgICAgICAgICB8IDE4NSArKysrKysrKysrKy0tLS0tLS0KIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUU3ViR2VuZXJhdG9yLmNwcCB8ICAxMSArLQogLi4uL0ph
dmFTY3JpcHRDb3JlL2ppdC9TZXR1cFZhcmFyZ3NGcmFtZS5jcHAgIHwgICA5ICstCiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUveWFyci9ZYXJySklULmNwcCAgICAgICAgfCAgIDMgKy0KIDE3IGZpbGVz
IGNoYW5nZWQsIDI1OCBpbnNlcnRpb25zKCspLCAyMTEgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPU1JFeGl0LmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9kZmcvREZHT1NSRXhpdC5jcHAKaW5kZXggMWM3N2NkNzE5ZGUzLi4xNGJmYTNi
Zjk5MjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHT1NSRXhpdC5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPU1JFeGl0LmNwcApAQCAtMzk3
LDggKzM5Nyw3IEBAIHZvaWQgT1NSRXhpdDo6Y29tcGlsZUV4aXQoQ0NhbGxIZWxwZXJzJiBqaXQs
IFZNJiB2bSwgY29uc3QgT1NSRXhpdCYgZXhpdCwgY29uc3QKICAgICAgICAgICAgICAgICBqaXQu
bG9hZDgoQXNzZW1ibHlIZWxwZXJzOjpBZGRyZXNzKHNjcmF0Y2gxLCBTdHJ1Y3R1cmU6OmluZGV4
aW5nTW9kZUluY2x1ZGluZ0hpc3RvcnlPZmZzZXQoKSksIHNjcmF0Y2gxKTsKICNlbmRpZgogICAg
ICAgICAgICAgICAgIGppdC5hbmQzMihBc3NlbWJseUhlbHBlcnM6OlRydXN0ZWRJbW0zMihJbmRl
eGluZ01vZGVNYXNrKSwgc2NyYXRjaDEpOwotICAgICAgICAgICAgICAgIGppdC5tb3ZlKEFzc2Vt
Ymx5SGVscGVyczo6VHJ1c3RlZEltbTMyKDEpLCBzY3JhdGNoMik7Ci0gICAgICAgICAgICAgICAg
aml0LmxzaGlmdDMyKHNjcmF0Y2gxLCBzY3JhdGNoMik7CisgICAgICAgICAgICAgICAgaml0Lmxz
aGlmdDMyKEFzc2VtYmx5SGVscGVyczo6VHJ1c3RlZEltbTMyKDEpLCBzY3JhdGNoMSwgc2NyYXRj
aDIpOwogICAgICAgICAgICAgICAgIHN0b3JlQXJyYXlNb2Rlcy5saW5rKCZqaXQpOwogICAgICAg
ICAgICAgICAgIGppdC5vcjMyKHNjcmF0Y2gyLCBBc3NlbWJseUhlbHBlcnM6OkFic29sdXRlQWRk
cmVzcyhhcnJheVByb2ZpbGUtPmFkZHJlc3NPZkFycmF5TW9kZXMoKSkpOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklULmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQuY3BwCmluZGV4IDFiNGExMjEw
NzlkOS4uNjIzMDRlMDBhMDMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR1NwZWN1bGF0aXZlSklULmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RG
R1NwZWN1bGF0aXZlSklULmNwcApAQCAtNTEzOCwxNSArNTEzOCwxOCBAQCB2b2lkIFNwZWN1bGF0
aXZlSklUOjpjb21waWxlQXJpdGhTdWIoTm9kZSogbm9kZSkKICAgICAgICAgICAgIGludDMyX3Qg
aW1tMiA9IG5vZGUtPmNoaWxkMigpLT5hc0ludDMyKCk7CiAgICAgICAgICAgICBHUFJUZW1wb3Jh
cnkgcmVzdWx0KHRoaXMpOwogCi0gICAgICAgICAgICBpZiAoIXNob3VsZENoZWNrT3ZlcmZsb3co
bm9kZS0+YXJpdGhNb2RlKCkpKSB7Ci0gICAgICAgICAgICAgICAgbW92ZShvcDEuZ3ByKCksIHJl
c3VsdC5ncHIoKSk7Ci0gICAgICAgICAgICAgICAgc3ViMzIoSW1tMzIoaW1tMiksIHJlc3VsdC5n
cHIoKSk7Ci0gICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgR1BSUmVnIG9wMUdQUiA9
IG9wMS5ncHIoKTsKKyAgICAgICAgICAgIEdQUlJlZyByZXN1bHRHUFIgPSByZXN1bHQuZ3ByKCk7
CisKKyAgICAgICAgICAgIGlmICghc2hvdWxkQ2hlY2tPdmVyZmxvdyhub2RlLT5hcml0aE1vZGUo
KSkpCisgICAgICAgICAgICAgICAgc3ViMzIob3AxR1BSLCBJbW0zMihpbW0yKSwgcmVzdWx0R1BS
KTsKKyAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgIEdQUlRlbXBvcmFyeSBzY3Jh
dGNoKHRoaXMpOwotICAgICAgICAgICAgICAgIHNwZWN1bGF0aW9uQ2hlY2soRXhpdEtpbmQ6Ok92
ZXJmbG93LCBKU1ZhbHVlUmVncygpLCBudWxscHRyLCBicmFuY2hTdWIzMihPdmVyZmxvdywgb3Ax
LmdwcigpLCBJbW0zMihpbW0yKSwgcmVzdWx0LmdwcigpLCBzY3JhdGNoLmdwcigpKSk7CisgICAg
ICAgICAgICAgICAgR1BSUmVnIHNjcmF0Y2hHUFIgPSBzY3JhdGNoLmdwcigpOworICAgICAgICAg
ICAgICAgIHNwZWN1bGF0aW9uQ2hlY2soRXhpdEtpbmQ6Ok92ZXJmbG93LCBKU1ZhbHVlUmVncygp
LCBudWxscHRyLCBicmFuY2hTdWIzMihPdmVyZmxvdywgb3AxR1BSLCBJbW0zMihpbW0yKSwgcmVz
dWx0R1BSLCBzY3JhdGNoR1BSKSk7CiAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgIHN0cmlj
dEludDMyUmVzdWx0KHJlc3VsdC5ncHIoKSwgbm9kZSk7CisgICAgICAgICAgICBzdHJpY3RJbnQz
MlJlc3VsdChyZXN1bHRHUFIsIG5vZGUpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9
CiAgICAgICAgICAgICAKQEAgLTUxNTQsMTIgKzUxNTcsMTUgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJ
VDo6Y29tcGlsZUFyaXRoU3ViKE5vZGUqIG5vZGUpCiAgICAgICAgICAgICBpbnQzMl90IGltbTEg
PSBub2RlLT5jaGlsZDEoKS0+YXNJbnQzMigpOwogICAgICAgICAgICAgU3BlY3VsYXRlSW50MzJP
cGVyYW5kIG9wMih0aGlzLCBub2RlLT5jaGlsZDIoKSk7CiAgICAgICAgICAgICBHUFJUZW1wb3Jh
cnkgcmVzdWx0KHRoaXMpOworCisgICAgICAgICAgICBHUFJSZWcgb3AyR1BSID0gb3AyLmdwcigp
OworICAgICAgICAgICAgR1BSUmVnIHJlc3VsdEdQUiA9IHJlc3VsdC5ncHIoKTsKICAgICAgICAg
ICAgICAgICAKLSAgICAgICAgICAgIG1vdmUoSW1tMzIoaW1tMSksIHJlc3VsdC5ncHIoKSk7Cisg
ICAgICAgICAgICBtb3ZlKEltbTMyKGltbTEpLCByZXN1bHRHUFIpOwogICAgICAgICAgICAgaWYg
KCFzaG91bGRDaGVja092ZXJmbG93KG5vZGUtPmFyaXRoTW9kZSgpKSkKLSAgICAgICAgICAgICAg
ICBzdWIzMihvcDIuZ3ByKCksIHJlc3VsdC5ncHIoKSk7CisgICAgICAgICAgICAgICAgc3ViMzIo
b3AyR1BSLCByZXN1bHRHUFIpOwogICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgIHNw
ZWN1bGF0aW9uQ2hlY2soRXhpdEtpbmQ6Ok92ZXJmbG93LCBKU1ZhbHVlUmVncygpLCBudWxscHRy
LCBicmFuY2hTdWIzMihPdmVyZmxvdywgb3AyLmdwcigpLCByZXN1bHQuZ3ByKCkpKTsKKyAgICAg
ICAgICAgICAgICBzcGVjdWxhdGlvbkNoZWNrKEV4aXRLaW5kOjpPdmVyZmxvdywgSlNWYWx1ZVJl
Z3MoKSwgbnVsbHB0ciwgYnJhbmNoU3ViMzIoT3ZlcmZsb3csIG9wMkdQUiwgcmVzdWx0R1BSKSk7
CiAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICBzdHJpY3RJbnQzMlJlc3VsdChyZXN1bHQu
Z3ByKCksIG5vZGUpOwogICAgICAgICAgICAgcmV0dXJuOwpAQCAtNTE2OSwxMyArNTE3NSwxNiBA
QCB2b2lkIFNwZWN1bGF0aXZlSklUOjpjb21waWxlQXJpdGhTdWIoTm9kZSogbm9kZSkKICAgICAg
ICAgU3BlY3VsYXRlSW50MzJPcGVyYW5kIG9wMih0aGlzLCBub2RlLT5jaGlsZDIoKSk7CiAgICAg
ICAgIEdQUlRlbXBvcmFyeSByZXN1bHQodGhpcyk7CiAKLSAgICAgICAgaWYgKCFzaG91bGRDaGVj
a092ZXJmbG93KG5vZGUtPmFyaXRoTW9kZSgpKSkgewotICAgICAgICAgICAgbW92ZShvcDEuZ3By
KCksIHJlc3VsdC5ncHIoKSk7Ci0gICAgICAgICAgICBzdWIzMihvcDIuZ3ByKCksIHJlc3VsdC5n
cHIoKSk7Ci0gICAgICAgIH0gZWxzZQotICAgICAgICAgICAgc3BlY3VsYXRpb25DaGVjayhFeGl0
S2luZDo6T3ZlcmZsb3csIEpTVmFsdWVSZWdzKCksIG51bGxwdHIsIGJyYW5jaFN1YjMyKE92ZXJm
bG93LCBvcDEuZ3ByKCksIG9wMi5ncHIoKSwgcmVzdWx0LmdwcigpKSk7CisgICAgICAgIEdQUlJl
ZyBvcDFHUFIgPSBvcDEuZ3ByKCk7CisgICAgICAgIEdQUlJlZyBvcDJHUFIgPSBvcDIuZ3ByKCk7
CisgICAgICAgIEdQUlJlZyByZXN1bHRHUFIgPSByZXN1bHQuZ3ByKCk7CiAKLSAgICAgICAgc3Ry
aWN0SW50MzJSZXN1bHQocmVzdWx0LmdwcigpLCBub2RlKTsKKyAgICAgICAgaWYgKCFzaG91bGRD
aGVja092ZXJmbG93KG5vZGUtPmFyaXRoTW9kZSgpKSkKKyAgICAgICAgICAgIHN1YjMyKG9wMUdQ
Uiwgb3AyR1BSLCByZXN1bHRHUFIpOworICAgICAgICBlbHNlCisgICAgICAgICAgICBzcGVjdWxh
dGlvbkNoZWNrKEV4aXRLaW5kOjpPdmVyZmxvdywgSlNWYWx1ZVJlZ3MoKSwgbnVsbHB0ciwgYnJh
bmNoU3ViMzIoT3ZlcmZsb3csIG9wMUdQUiwgb3AyR1BSLCByZXN1bHRHUFIpKTsKKworICAgICAg
ICBzdHJpY3RJbnQzMlJlc3VsdChyZXN1bHRHUFIsIG5vZGUpOwogICAgICAgICByZXR1cm47CiAg
ICAgfQogICAgICAgICAKQEAgLTUxOTAsMjAgKzUxOTksMzEgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJ
VDo6Y29tcGlsZUFyaXRoU3ViKE5vZGUqIG5vZGUpCiAgICAgICAgICAgICBTcGVjdWxhdGVXaGlj
aGV2ZXJJbnQ1Mk9wZXJhbmQgb3AxKHRoaXMsIG5vZGUtPmNoaWxkMSgpKTsKICAgICAgICAgICAg
IFNwZWN1bGF0ZVdoaWNoZXZlckludDUyT3BlcmFuZCBvcDIodGhpcywgbm9kZS0+Y2hpbGQyKCks
IG9wMSk7CiAgICAgICAgICAgICBHUFJUZW1wb3JhcnkgcmVzdWx0KHRoaXMsIFJldXNlLCBvcDEp
OwotICAgICAgICAgICAgbW92ZShvcDEuZ3ByKCksIHJlc3VsdC5ncHIoKSk7Ci0gICAgICAgICAg
ICBzdWI2NChvcDIuZ3ByKCksIHJlc3VsdC5ncHIoKSk7Ci0gICAgICAgICAgICBpbnQ1MlJlc3Vs
dChyZXN1bHQuZ3ByKCksIG5vZGUsIG9wMS5mb3JtYXQoKSk7CisKKyAgICAgICAgICAgIEdQUlJl
ZyBvcDFHUFIgPSBvcDEuZ3ByKCk7CisgICAgICAgICAgICBHUFJSZWcgb3AyR1BSID0gb3AyLmdw
cigpOworICAgICAgICAgICAgR1BSUmVnIHJlc3VsdEdQUiA9IHJlc3VsdC5ncHIoKTsKKworICAg
ICAgICAgICAgc3ViNjQob3AxR1BSLCBvcDJHUFIsIHJlc3VsdEdQUik7CisgICAgICAgICAgICBp
bnQ1MlJlc3VsdChyZXN1bHRHUFIsIG5vZGUsIG9wMS5mb3JtYXQoKSk7CiAgICAgICAgICAgICBy
ZXR1cm47CiAgICAgICAgIH0KICAgICAgICAgCiAgICAgICAgIFNwZWN1bGF0ZUludDUyT3BlcmFu
ZCBvcDEodGhpcywgbm9kZS0+Y2hpbGQxKCkpOwogICAgICAgICBTcGVjdWxhdGVJbnQ1Mk9wZXJh
bmQgb3AyKHRoaXMsIG5vZGUtPmNoaWxkMigpKTsKICAgICAgICAgR1BSVGVtcG9yYXJ5IHJlc3Vs
dCh0aGlzKTsKLSAgICAgICAgbW92ZShvcDEuZ3ByKCksIHJlc3VsdC5ncHIoKSk7Ci0gICAgICAg
IHNwZWN1bGF0aW9uQ2hlY2soCi0gICAgICAgICAgICBJbnQ1Mk92ZXJmbG93LCBKU1ZhbHVlUmVn
cygpLCBudWxscHRyLAotICAgICAgICAgICAgYnJhbmNoU3ViNjQoT3ZlcmZsb3csIG9wMi5ncHIo
KSwgcmVzdWx0LmdwcigpKSk7Ci0gICAgICAgIGludDUyUmVzdWx0KHJlc3VsdC5ncHIoKSwgbm9k
ZSk7CisKKyAgICAgICAgR1BSUmVnIG9wMUdQUiA9IG9wMS5ncHIoKTsKKyAgICAgICAgR1BSUmVn
IG9wMkdQUiA9IG9wMi5ncHIoKTsKKyAgICAgICAgR1BSUmVnIHJlc3VsdEdQUiA9IHJlc3VsdC5n
cHIoKTsKKworI2lmIENQVShBUk02NCkKKyAgICAgICAgc3BlY3VsYXRpb25DaGVjayhJbnQ1Mk92
ZXJmbG93LCBKU1ZhbHVlUmVncygpLCBudWxscHRyLCBicmFuY2hTdWI2NChPdmVyZmxvdywgb3Ax
R1BSLCBvcDJHUFIsIHJlc3VsdEdQUikpOworI2Vsc2UKKyAgICAgICAgbW92ZShvcDFHUFIsIHJl
c3VsdEdQUik7CisgICAgICAgIHNwZWN1bGF0aW9uQ2hlY2soSW50NTJPdmVyZmxvdywgSlNWYWx1
ZVJlZ3MoKSwgbnVsbHB0ciwgYnJhbmNoU3ViNjQoT3ZlcmZsb3csIG9wMkdQUiwgcmVzdWx0R1BS
KSk7CisjZW5kaWYKKyAgICAgICAgaW50NTJSZXN1bHQocmVzdWx0R1BSLCBub2RlKTsKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KICNlbmRpZiAvLyBVU0UoSlNWQUxVRTY0KQpAQCAtNTIxMywxMSAr
NTIzMywxMiBAQCB2b2lkIFNwZWN1bGF0aXZlSklUOjpjb21waWxlQXJpdGhTdWIoTm9kZSogbm9k
ZSkKICAgICAgICAgU3BlY3VsYXRlRG91YmxlT3BlcmFuZCBvcDIodGhpcywgbm9kZS0+Y2hpbGQy
KCkpOwogICAgICAgICBGUFJUZW1wb3JhcnkgcmVzdWx0KHRoaXMsIG9wMSk7CiAKLSAgICAgICAg
RlBSUmVnIHJlZzEgPSBvcDEuZnByKCk7Ci0gICAgICAgIEZQUlJlZyByZWcyID0gb3AyLmZwcigp
OwotICAgICAgICBzdWJEb3VibGUocmVnMSwgcmVnMiwgcmVzdWx0LmZwcigpKTsKKyAgICAgICAg
RlBSUmVnIG9wMUZQUiA9IG9wMS5mcHIoKTsKKyAgICAgICAgRlBSUmVnIG9wMkZQUiA9IG9wMi5m
cHIoKTsKKyAgICAgICAgRlBSUmVnIHJlc3VsdEZQUiA9IHJlc3VsdC5mcHIoKTsKIAotICAgICAg
ICBkb3VibGVSZXN1bHQocmVzdWx0LmZwcigpLCBub2RlKTsKKyAgICAgICAgc3ViRG91YmxlKG9w
MUZQUiwgb3AyRlBSLCByZXN1bHRGUFIpOworICAgICAgICBkb3VibGVSZXN1bHQocmVzdWx0RlBS
LCBub2RlKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxhdGl2ZUpJVDY0LmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQ2NC5jcHAKaW5kZXggZGM3MDdmMjUxYzUwLi4w
NTI5OWI4MjRlNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3Bl
Y3VsYXRpdmVKSVQ2NC5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVj
dWxhdGl2ZUpJVDY0LmNwcApAQCAtMjYyLDggKzI2Miw3IEBAIHZvaWQgU3BlY3VsYXRpdmVKSVQ6
Om5vblNwZWN1bGF0aXZlTm9uUGVlcGhvbGVDb21wYXJlTnVsbE9yVW5kZWZpbmVkKEVkZ2Ugb3Bl
cmFuCiAgICAgfQogIAogICAgIGlmICghaXNLbm93bk5vdE90aGVyKG9wZXJhbmQubm9kZSgpKSkg
ewotICAgICAgICBtb3ZlKGFyZ0dQUiwgcmVzdWx0R1BSKTsKLSAgICAgICAgYW5kNjQoVHJ1c3Rl
ZEltbTMyKH5KU1ZhbHVlOjpVbmRlZmluZWRUYWcpLCByZXN1bHRHUFIpOworICAgICAgICBhbmQ2
NChUcnVzdGVkSW1tMzIofkpTVmFsdWU6OlVuZGVmaW5lZFRhZyksIGFyZ0dQUiwgcmVzdWx0R1BS
KTsKICAgICAgICAgY29tcGFyZTY0KEVxdWFsLCByZXN1bHRHUFIsIFRydXN0ZWRJbW0zMihKU1Zh
bHVlOjpWYWx1ZU51bGwpLCByZXN1bHRHUFIpOwogICAgIH0KIApAQCAtMzI0LDggKzMyMyw3IEBA
IHZvaWQgU3BlY3VsYXRpdmVKSVQ6Om5vblNwZWN1bGF0aXZlUGVlcGhvbGVCcmFuY2hOdWxsT3JV
bmRlZmluZWQoRWRnZSBvcGVyYW5kLCBOCiAgICAgICAgICAgICBjb25kaXRpb24gPSBOb3RFcXVh
bDsKICAgICAgICAgICAgIHN0ZDo6c3dhcCh0YWtlbiwgbm90VGFrZW4pOwogICAgICAgICB9Ci0g
ICAgICAgIG1vdmUoYXJnR1BSLCByZXN1bHRHUFIpOwotICAgICAgICBhbmQ2NChUcnVzdGVkSW1t
MzIofkpTVmFsdWU6OlVuZGVmaW5lZFRhZyksIHJlc3VsdEdQUik7CisgICAgICAgIGFuZDY0KFRy
dXN0ZWRJbW0zMih+SlNWYWx1ZTo6VW5kZWZpbmVkVGFnKSwgYXJnR1BSLCByZXN1bHRHUFIpOwog
ICAgICAgICBicmFuY2g2NChjb25kaXRpb24sIHJlc3VsdEdQUiwgVHJ1c3RlZEltbTY0KEpTVmFs
dWU6OlZhbHVlTnVsbCksIHRha2VuKTsKICAgICAgICAganVtcChub3RUYWtlbik7CiAgICAgfQpA
QCAtMTgwMCw4ICsxNzk4LDcgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZU9iamVjdFRv
T2JqZWN0T3JPdGhlckVxdWFsaXR5KEVkZ2UgbGVmdENoaWxkLCBFZGdlIHIKICAgICAvLyBXZSBr
bm93IHRoYXQgd2l0aGluIHRoaXMgYnJhbmNoLCByaWdodENoaWxkIG11c3Qgbm90IGJlIGEgY2Vs
bC4gQ2hlY2sgaWYgdGhhdCBpcyBlbm91Z2ggdG8KICAgICAvLyBwcm92ZSB0aGF0IGl0IGlzIGVp
dGhlciBudWxsIG9yIHVuZGVmaW5lZC4KICAgICBpZiAobmVlZHNUeXBlQ2hlY2socmlnaHRDaGls
ZCwgU3BlY0NlbGxDaGVjayB8IFNwZWNPdGhlcikpIHsKLSAgICAgICAgbW92ZShvcDJHUFIsIHJl
c3VsdEdQUik7Ci0gICAgICAgIGFuZDY0KFRydXN0ZWRJbW0zMih+SlNWYWx1ZTo6VW5kZWZpbmVk
VGFnKSwgcmVzdWx0R1BSKTsKKyAgICAgICAgYW5kNjQoVHJ1c3RlZEltbTMyKH5KU1ZhbHVlOjpV
bmRlZmluZWRUYWcpLCBvcDJHUFIsIHJlc3VsdEdQUik7CiAgICAgICAgIAogICAgICAgICB0eXBl
Q2hlY2soCiAgICAgICAgICAgICBKU1ZhbHVlUmVncyhvcDJHUFIpLCByaWdodENoaWxkLCBTcGVj
Q2VsbENoZWNrIHwgU3BlY090aGVyLApAQCAtMTg3Niw4ICsxODczLDcgQEAgdm9pZCBTcGVjdWxh
dGl2ZUpJVDo6Y29tcGlsZVBlZXBIb2xlT2JqZWN0VG9PYmplY3RPck90aGVyRXF1YWxpdHkoRWRn
ZSBsZWZ0Q2hpbGQKICAgICAgICAganVtcChub3RUYWtlbiwgRm9yY2VKdW1wKTsKICAgICAgICAg
CiAgICAgICAgIHJpZ2h0Tm90Q2VsbC5saW5rKHRoaXMpOwotICAgICAgICBtb3ZlKG9wMkdQUiwg
cmVzdWx0R1BSKTsKLSAgICAgICAgYW5kNjQoVHJ1c3RlZEltbTMyKH5KU1ZhbHVlOjpVbmRlZmlu
ZWRUYWcpLCByZXN1bHRHUFIpOworICAgICAgICBhbmQ2NChUcnVzdGVkSW1tMzIofkpTVmFsdWU6
OlVuZGVmaW5lZFRhZyksIG9wMkdQUiwgcmVzdWx0R1BSKTsKICAgICAgICAgCiAgICAgICAgIHR5
cGVDaGVjaygKICAgICAgICAgICAgIEpTVmFsdWVSZWdzKG9wMkdQUiksIHJpZ2h0Q2hpbGQsIFNw
ZWNDZWxsQ2hlY2sgfCBTcGVjT3RoZXIsIGJyYW5jaDY0KApAQCAtMjA2MCw4ICsyMDU2LDcgQEAg
dm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZVRvQm9vbGVhbk9iamVjdE9yT3RoZXIoRWRnZSBu
b2RlVXNlLCBib29sIGludmVydCkKICAgICBub3RDZWxsLmxpbmsodGhpcyk7CiAKICAgICBpZiAo
bmVlZHNUeXBlQ2hlY2sobm9kZVVzZSwgU3BlY0NlbGxDaGVjayB8IFNwZWNPdGhlcikpIHsKLSAg
ICAgICAgbW92ZSh2YWx1ZUdQUiwgcmVzdWx0R1BSKTsKLSAgICAgICAgYW5kNjQoVHJ1c3RlZElt
bTMyKH5KU1ZhbHVlOjpVbmRlZmluZWRUYWcpLCByZXN1bHRHUFIpOworICAgICAgICBhbmQ2NChU
cnVzdGVkSW1tMzIofkpTVmFsdWU6OlVuZGVmaW5lZFRhZyksIHZhbHVlR1BSLCByZXN1bHRHUFIp
OwogICAgICAgICB0eXBlQ2hlY2soCiAgICAgICAgICAgICBKU1ZhbHVlUmVncyh2YWx1ZUdQUiks
IG5vZGVVc2UsIFNwZWNDZWxsQ2hlY2sgfCBTcGVjT3RoZXIsIGJyYW5jaDY0KAogICAgICAgICAg
ICAgICAgIE5vdEVxdWFsLApAQCAtMjEyMSwxNiArMjExNiwxOCBAQCB2b2lkIFNwZWN1bGF0aXZl
SklUOjpjb21waWxlVG9Cb29sZWFuKE5vZGUqIG5vZGUsIGJvb2wgaW52ZXJ0KQogICAgICAgICAK
ICAgICAgICAgSlNWYWx1ZU9wZXJhbmQgdmFsdWUodGhpcywgbm9kZS0+Y2hpbGQxKCksIE1hbnVh
bE9wZXJhbmRTcGVjdWxhdGlvbik7CiAgICAgICAgIEdQUlRlbXBvcmFyeSByZXN1bHQodGhpcyk7
IC8vIEZJWE1FOiBXZSBjb3VsZCByZXVzZSwgYnV0IG9uIHNwZWN1bGF0aW9uIGZhaWwgd291bGQg
bmVlZCByZWNvdmVyeSB0byByZXN0b3JlIHRhZyAoYWtpbiB0byBhZGQpLgotICAgICAgICAKLSAg
ICAgICAgbW92ZSh2YWx1ZS5ncHIoKSwgcmVzdWx0LmdwcigpKTsKLSAgICAgICAgeG9yNjQoVHJ1
c3RlZEltbTMyKEpTVmFsdWU6OlZhbHVlRmFsc2UpLCByZXN1bHQuZ3ByKCkpOworCisgICAgICAg
IEdQUlJlZyB2YWx1ZUdQUiA9IHZhbHVlLmdwcigpOworICAgICAgICBHUFJSZWcgcmVzdWx0R1BS
ID0gcmVzdWx0LmdwcigpOworCisgICAgICAgIHhvcjY0KFRydXN0ZWRJbW0zMihKU1ZhbHVlOjpW
YWx1ZUZhbHNlKSwgdmFsdWVHUFIsIHJlc3VsdEdQUik7CiAgICAgICAgIHR5cGVDaGVjaygKLSAg
ICAgICAgICAgIEpTVmFsdWVSZWdzKHZhbHVlLmdwcigpKSwgbm9kZS0+Y2hpbGQxKCksIFNwZWNC
b29sZWFuLCBicmFuY2hUZXN0NjQoCi0gICAgICAgICAgICAgICAgTm9uWmVybywgcmVzdWx0Lmdw
cigpLCBUcnVzdGVkSW1tMzIoc3RhdGljX2Nhc3Q8aW50MzJfdD4ofjEpKSkpOwotICAgICAgICB4
b3I2NChpbnZlcnQgPyBUcnVzdGVkSW1tMzIoSlNWYWx1ZTo6VmFsdWVUcnVlKSA6IFRydXN0ZWRJ
bW0zMihKU1ZhbHVlOjpWYWx1ZUZhbHNlKSwgcmVzdWx0LmdwcigpKTsKKyAgICAgICAgICAgIEpT
VmFsdWVSZWdzKHZhbHVlR1BSKSwgbm9kZS0+Y2hpbGQxKCksIFNwZWNCb29sZWFuLCBicmFuY2hU
ZXN0NjQoCisgICAgICAgICAgICAgICAgTm9uWmVybywgcmVzdWx0R1BSLCBUcnVzdGVkSW1tMzIo
c3RhdGljX2Nhc3Q8aW50MzJfdD4ofjEpKSkpOworICAgICAgICB4b3I2NChpbnZlcnQgPyBUcnVz
dGVkSW1tMzIoSlNWYWx1ZTo6VmFsdWVUcnVlKSA6IFRydXN0ZWRJbW0zMihKU1ZhbHVlOjpWYWx1
ZUZhbHNlKSwgcmVzdWx0R1BSKTsKICAgICAgICAgCiAgICAgICAgIC8vIElmIHdlIGFkZCBhIERh
dGFGb3JtYXRCb29sLCB3ZSBzaG91bGQgdXNlIGl0IGhlcmUuCi0gICAgICAgIGpzVmFsdWVSZXN1
bHQocmVzdWx0LmdwcigpLCBub2RlLCBEYXRhRm9ybWF0SlNCb29sZWFuKTsKKyAgICAgICAganNW
YWx1ZVJlc3VsdChyZXN1bHRHUFIsIG5vZGUsIERhdGFGb3JtYXRKU0Jvb2xlYW4pOwogICAgICAg
ICByZXR1cm47CiAgICAgfQogICAgICAgICAKQEAgLTIyMTQsOCArMjIxMSw3IEBAIHZvaWQgU3Bl
Y3VsYXRpdmVKSVQ6OmVtaXRPYmplY3RPck90aGVyQnJhbmNoKEVkZ2Ugbm9kZVVzZSwgQmFzaWNC
bG9jayogdGFrZW4sIEJhCiAgICAgbm90Q2VsbC5saW5rKHRoaXMpOwogICAgIAogICAgIGlmIChu
ZWVkc1R5cGVDaGVjayhub2RlVXNlLCBTcGVjQ2VsbENoZWNrIHwgU3BlY090aGVyKSkgewotICAg
ICAgICBtb3ZlKHZhbHVlR1BSLCBzY3JhdGNoR1BSKTsKLSAgICAgICAgYW5kNjQoVHJ1c3RlZElt
bTMyKH5KU1ZhbHVlOjpVbmRlZmluZWRUYWcpLCBzY3JhdGNoR1BSKTsKKyAgICAgICAgYW5kNjQo
VHJ1c3RlZEltbTMyKH5KU1ZhbHVlOjpVbmRlZmluZWRUYWcpLCB2YWx1ZUdQUiwgc2NyYXRjaEdQ
Uik7CiAgICAgICAgIHR5cGVDaGVjaygKICAgICAgICAgICAgIEpTVmFsdWVSZWdzKHZhbHVlR1BS
KSwgbm9kZVVzZSwgU3BlY0NlbGxDaGVjayB8IFNwZWNPdGhlciwgYnJhbmNoNjQoCiAgICAgICAg
ICAgICAgICAgTm90RXF1YWwsIHNjcmF0Y2hHUFIsIFRydXN0ZWRJbW02NChKU1ZhbHVlOjpWYWx1
ZU51bGwpKSk7CkBAIC00MzQ1LDM5ICs0MzQxLDQxIEBAIHZvaWQgU3BlY3VsYXRpdmVKSVQ6OmNv
bXBpbGUoTm9kZSogbm9kZSkKICAgICAgICAgY2FzZSBCb29sZWFuVXNlOiB7CiAgICAgICAgICAg
ICBKU1ZhbHVlT3BlcmFuZCB2YWx1ZSh0aGlzLCBub2RlLT5jaGlsZDEoKSwgTWFudWFsT3BlcmFu
ZFNwZWN1bGF0aW9uKTsKICAgICAgICAgICAgIEdQUlRlbXBvcmFyeSByZXN1bHQodGhpcyk7IC8v
IEZJWE1FOiBXZSBjb3VsZCByZXVzZSwgYnV0IG9uIHNwZWN1bGF0aW9uIGZhaWwgd291bGQgbmVl
ZCByZWNvdmVyeSB0byByZXN0b3JlIHRhZyAoYWtpbiB0byBhZGQpLgorCisgICAgICAgICAgICBH
UFJSZWcgdmFsdWVHUFIgPSB2YWx1ZS5ncHIoKTsKKyAgICAgICAgICAgIEdQUlJlZyByZXN1bHRH
UFIgPSByZXN1bHQuZ3ByKCk7CiAgICAgICAgICAgICAKLSAgICAgICAgICAgIG1vdmUodmFsdWUu
Z3ByKCksIHJlc3VsdC5ncHIoKSk7Ci0gICAgICAgICAgICB4b3I2NChUcnVzdGVkSW1tMzIoSlNW
YWx1ZTo6VmFsdWVGYWxzZSksIHJlc3VsdC5ncHIoKSk7CisgICAgICAgICAgICB4b3I2NChUcnVz
dGVkSW1tMzIoSlNWYWx1ZTo6VmFsdWVGYWxzZSksIHZhbHVlR1BSLCByZXN1bHRHUFIpOwogICAg
ICAgICAgICAgREZHX1RZUEVfQ0hFQ0soCi0gICAgICAgICAgICAgICAgSlNWYWx1ZVJlZ3ModmFs
dWUuZ3ByKCkpLCBub2RlLT5jaGlsZDEoKSwgU3BlY0Jvb2xlYW4sIGJyYW5jaFRlc3Q2NCgKLSAg
ICAgICAgICAgICAgICAgICAgTm9uWmVybywgcmVzdWx0LmdwcigpLCBUcnVzdGVkSW1tMzIoc3Rh
dGljX2Nhc3Q8aW50MzJfdD4ofjEpKSkpOworICAgICAgICAgICAgICAgIEpTVmFsdWVSZWdzKHZh
bHVlR1BSKSwgbm9kZS0+Y2hpbGQxKCksIFNwZWNCb29sZWFuLCBicmFuY2hUZXN0NjQoCisgICAg
ICAgICAgICAgICAgICAgIE5vblplcm8sIHJlc3VsdEdQUiwgVHJ1c3RlZEltbTMyKHN0YXRpY19j
YXN0PGludDMyX3Q+KH4xKSkpKTsKIAotICAgICAgICAgICAgc3RyaWN0SW50MzJSZXN1bHQocmVz
dWx0LmdwcigpLCBub2RlKTsKKyAgICAgICAgICAgIHN0cmljdEludDMyUmVzdWx0KHJlc3VsdEdQ
Uiwgbm9kZSk7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogICAgICAgICAgICAgCiAg
ICAgICAgIGNhc2UgVW50eXBlZFVzZTogewogICAgICAgICAgICAgSlNWYWx1ZU9wZXJhbmQgdmFs
dWUodGhpcywgbm9kZS0+Y2hpbGQxKCkpOwogICAgICAgICAgICAgR1BSVGVtcG9yYXJ5IHJlc3Vs
dCh0aGlzKTsKKworICAgICAgICAgICAgR1BSUmVnIHZhbHVlR1BSID0gdmFsdWUuZ3ByKCk7Cisg
ICAgICAgICAgICBHUFJSZWcgcmVzdWx0R1BSID0gcmVzdWx0LmdwcigpOwogICAgICAgICAgICAg
CiAgICAgICAgICAgICBpZiAoIW1faW50ZXJwcmV0ZXIubmVlZHNUeXBlQ2hlY2sobm9kZS0+Y2hp
bGQxKCksIFNwZWNCb29sSW50MzIgfCBTcGVjQm9vbGVhbikpIHsKLSAgICAgICAgICAgICAgICBt
b3ZlKHZhbHVlLmdwcigpLCByZXN1bHQuZ3ByKCkpOwotICAgICAgICAgICAgICAgIGFuZDMyKFRy
dXN0ZWRJbW0zMigxKSwgcmVzdWx0LmdwcigpKTsKLSAgICAgICAgICAgICAgICBzdHJpY3RJbnQz
MlJlc3VsdChyZXN1bHQuZ3ByKCksIG5vZGUpOworICAgICAgICAgICAgICAgIGFuZDMyKFRydXN0
ZWRJbW0zMigxKSwgdmFsdWVHUFIsIHJlc3VsdEdQUik7CisgICAgICAgICAgICAgICAgc3RyaWN0
SW50MzJSZXN1bHQocmVzdWx0R1BSLCBub2RlKTsKICAgICAgICAgICAgICAgICBicmVhazsKICAg
ICAgICAgICAgIH0KICAgICAgICAgICAgIAotICAgICAgICAgICAgbW92ZSh2YWx1ZS5ncHIoKSwg
cmVzdWx0LmdwcigpKTsKLSAgICAgICAgICAgIHhvcjY0KFRydXN0ZWRJbW0zMihKU1ZhbHVlOjpW
YWx1ZUZhbHNlKSwgcmVzdWx0LmdwcigpKTsKLSAgICAgICAgICAgIEp1bXAgaXNCb29sZWFuID0g
YnJhbmNoVGVzdDY0KAotICAgICAgICAgICAgICAgIFplcm8sIHJlc3VsdC5ncHIoKSwgVHJ1c3Rl
ZEltbTMyKHN0YXRpY19jYXN0PGludDMyX3Q+KH4xKSkpOwotICAgICAgICAgICAgbW92ZSh2YWx1
ZS5ncHIoKSwgcmVzdWx0LmdwcigpKTsKKyAgICAgICAgICAgIHhvcjY0KFRydXN0ZWRJbW0zMihK
U1ZhbHVlOjpWYWx1ZUZhbHNlKSwgdmFsdWVHUFIsIHJlc3VsdEdQUik7CisgICAgICAgICAgICBK
dW1wIGlzQm9vbGVhbiA9IGJyYW5jaFRlc3Q2NChaZXJvLCByZXN1bHRHUFIsIFRydXN0ZWRJbW0z
MihzdGF0aWNfY2FzdDxpbnQzMl90Pih+MSkpKTsKKyAgICAgICAgICAgIG1vdmUodmFsdWVHUFIs
IHJlc3VsdEdQUik7CiAgICAgICAgICAgICBKdW1wIGRvbmUgPSBqdW1wKCk7CiAgICAgICAgICAg
ICBpc0Jvb2xlYW4ubGluayh0aGlzKTsKLSAgICAgICAgICAgIG9yNjQoR1BSSW5mbzo6bnVtYmVy
VGFnUmVnaXN0ZXIsIHJlc3VsdC5ncHIoKSk7CisgICAgICAgICAgICBvcjY0KEdQUkluZm86Om51
bWJlclRhZ1JlZ2lzdGVyLCByZXN1bHRHUFIpOwogICAgICAgICAgICAgZG9uZS5saW5rKHRoaXMp
OwogICAgICAgICAgICAgCi0gICAgICAgICAgICBqc1ZhbHVlUmVzdWx0KHJlc3VsdC5ncHIoKSwg
bm9kZSk7CisgICAgICAgICAgICBqc1ZhbHVlUmVzdWx0KHJlc3VsdEdQUiwgbm9kZSk7CiAgICAg
ICAgICAgICBicmVhazsKICAgICAgICAgfQogICAgICAgICAgICAgCkBAIC01MTc0LDggKzUxNzIs
NyBAQCB2b2lkIFNwZWN1bGF0aXZlSklUOjpjb21waWxlKE5vZGUqIG5vZGUpCiAgICAgICAgIEdQ
UlJlZyB2YWx1ZUdQUiA9IHZhbHVlLmdwcigpOwogICAgICAgICBHUFJSZWcgcmVzdWx0R1BSID0g
cmVzdWx0LmdwcigpOwogCi0gICAgICAgIG1vdmUodmFsdWVHUFIsIHJlc3VsdEdQUik7Ci0gICAg
ICAgIGFuZDY0KFRydXN0ZWRJbW0zMih+SlNWYWx1ZTo6VW5kZWZpbmVkVGFnKSwgcmVzdWx0R1BS
KTsKKyAgICAgICAgYW5kNjQoVHJ1c3RlZEltbTMyKH5KU1ZhbHVlOjpVbmRlZmluZWRUYWcpLCB2
YWx1ZUdQUiwgcmVzdWx0R1BSKTsKICAgICAgICAgY29tcGFyZTY0KEVxdWFsLCByZXN1bHRHUFIs
IFRydXN0ZWRJbW0zMihKU1ZhbHVlOjpWYWx1ZU51bGwpLCByZXN1bHRHUFIpOwogCiAgICAgICAg
IHVuYmxlc3NlZEJvb2xlYW5SZXN1bHQocmVzdWx0R1BSLCBub2RlKTsKQEAgLTUxODUsMTIgKzUx
ODIsMTQgQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZShOb2RlKiBub2RlKQogICAgIGNh
c2UgSXNCb29sZWFuOiB7CiAgICAgICAgIEpTVmFsdWVPcGVyYW5kIHZhbHVlKHRoaXMsIG5vZGUt
PmNoaWxkMSgpKTsKICAgICAgICAgR1BSVGVtcG9yYXJ5IHJlc3VsdCh0aGlzLCBSZXVzZSwgdmFs
dWUpOworCisgICAgICAgIEdQUlJlZyB2YWx1ZUdQUiA9IHZhbHVlLmdwcigpOworICAgICAgICBH
UFJSZWcgcmVzdWx0R1BSID0gcmVzdWx0LmdwcigpOwogICAgICAgICAKLSAgICAgICAgbW92ZSh2
YWx1ZS5ncHIoKSwgcmVzdWx0LmdwcigpKTsKLSAgICAgICAgeG9yNjQoVHJ1c3RlZEltbTMyKEpT
VmFsdWU6OlZhbHVlRmFsc2UpLCByZXN1bHQuZ3ByKCkpOwotICAgICAgICB0ZXN0NjQoWmVybywg
cmVzdWx0LmdwcigpLCBUcnVzdGVkSW1tMzIoc3RhdGljX2Nhc3Q8aW50MzJfdD4ofjEpKSwgcmVz
dWx0LmdwcigpKTsKLSAgICAgICAgb3IzMihUcnVzdGVkSW1tMzIoSlNWYWx1ZTo6VmFsdWVGYWxz
ZSksIHJlc3VsdC5ncHIoKSk7Ci0gICAgICAgIGpzVmFsdWVSZXN1bHQocmVzdWx0LmdwcigpLCBu
b2RlLCBEYXRhRm9ybWF0SlNCb29sZWFuKTsKKyAgICAgICAgeG9yNjQoVHJ1c3RlZEltbTMyKEpT
VmFsdWU6OlZhbHVlRmFsc2UpLCB2YWx1ZUdQUiwgcmVzdWx0R1BSKTsKKyAgICAgICAgdGVzdDY0
KFplcm8sIHJlc3VsdEdQUiwgVHJ1c3RlZEltbTMyKHN0YXRpY19jYXN0PGludDMyX3Q+KH4xKSks
IHJlc3VsdEdQUik7CisgICAgICAgIG9yMzIoVHJ1c3RlZEltbTMyKEpTVmFsdWU6OlZhbHVlRmFs
c2UpLCByZXN1bHRHUFIpOworICAgICAgICBqc1ZhbHVlUmVzdWx0KHJlc3VsdEdQUiwgbm9kZSwg
RGF0YUZvcm1hdEpTQm9vbGVhbik7CiAgICAgICAgIGJyZWFrOwogICAgIH0KICAgICAgICAgCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTE9TUkV4aXRDb21waWxlci5j
cHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTE9TUkV4aXRDb21waWxlci5jcHAKaW5k
ZXggNzUwZGJiNjlmZjY4Li5hZjc0ZWYzOTlkZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9mdGwvRlRMT1NSRXhpdENvbXBpbGVyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvZnRsL0ZUTE9TUkV4aXRDb21waWxlci5jcHAKQEAgLTI3OCw4ICsyNzgsNyBAQCBzdGF0
aWMgdm9pZCBjb21waWxlU3R1YihWTSYgdm0sIHVuc2lnbmVkIGV4aXRJRCwgSklUQ29kZSogaml0
Q29kZSwgT1NSRXhpdCYgZXhpdAogICAgICAgICAgICAgICAgIG5vdFR5cGVkQXJyYXkubGluaygm
aml0KTsKICAgICAgICAgICAgICAgICBqaXQubG9hZDgoTWFjcm9Bc3NlbWJsZXI6OkFkZHJlc3Mo
R1BSSW5mbzo6cmVnVDAsIEpTQ2VsbDo6aW5kZXhpbmdUeXBlQW5kTWlzY09mZnNldCgpKSwgR1BS
SW5mbzo6cmVnVDEpOwogICAgICAgICAgICAgICAgIGppdC5hbmQzMihNYWNyb0Fzc2VtYmxlcjo6
VHJ1c3RlZEltbTMyKEluZGV4aW5nTW9kZU1hc2spLCBHUFJJbmZvOjpyZWdUMSk7Ci0gICAgICAg
ICAgICAgICAgaml0Lm1vdmUoTWFjcm9Bc3NlbWJsZXI6OlRydXN0ZWRJbW0zMigxKSwgR1BSSW5m
bzo6cmVnVDIpOwotICAgICAgICAgICAgICAgIGppdC5sc2hpZnQzMihHUFJJbmZvOjpyZWdUMSwg
R1BSSW5mbzo6cmVnVDIpOworICAgICAgICAgICAgICAgIGppdC5sc2hpZnQzMihNYWNyb0Fzc2Vt
Ymxlcjo6VHJ1c3RlZEltbTMyKDEpLCBHUFJJbmZvOjpyZWdUMSwgR1BSSW5mbzo6cmVnVDIpOwog
ICAgICAgICAgICAgICAgIHN0b3JlQXJyYXlNb2Rlcy5saW5rKCZqaXQpOwogICAgICAgICAgICAg
ICAgIGppdC5vcjMyKEdQUkluZm86OnJlZ1QyLCBDQ2FsbEhlbHBlcnM6OkFkZHJlc3MoR1BSSW5m
bzo6cmVnVDMsIEFycmF5UHJvZmlsZTo6b2Zmc2V0T2ZBcnJheU1vZGVzKCkpKTsKICAgICAgICAg
ICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvQXNzZW1ibHlIZWxw
ZXJzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvQXNzZW1ibHlIZWxwZXJzLmNwcApp
bmRleCA2Y2JiNWM5Mzk5NTMuLjQ3ZjVkNDU2NjRjMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2ppdC9Bc3NlbWJseUhlbHBlcnMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9qaXQvQXNzZW1ibHlIZWxwZXJzLmNwcApAQCAtODU1LDE4ICs4NTUsMTUgQEAgdm9pZCBl
bWl0UmFuZG9tVGh1bmtJbXBsKEFzc2VtYmx5SGVscGVycyYgaml0LCBHUFJSZWcgc2NyYXRjaDAs
IEdQUlJlZyBzY3JhdGNoMSwKICAgICBzdG9yZVRvTG93KHNjcmF0Y2gxKTsKIAogICAgIC8vIHgg
Xj0geCA8PCAyMzsKLSAgICBqaXQubW92ZShzY3JhdGNoMCwgc2NyYXRjaDIpOwotICAgIGppdC5s
c2hpZnQ2NChBc3NlbWJseUhlbHBlcnM6OlRydXN0ZWRJbW0zMigyMyksIHNjcmF0Y2gyKTsKKyAg
ICBqaXQubHNoaWZ0NjQoc2NyYXRjaDAsIEFzc2VtYmx5SGVscGVyczo6VHJ1c3RlZEltbTMyKDIz
KSwgc2NyYXRjaDIpOwogICAgIGppdC54b3I2NChzY3JhdGNoMiwgc2NyYXRjaDApOwogCiAgICAg
Ly8geCBePSB4ID4+IDE3OwotICAgIGppdC5tb3ZlKHNjcmF0Y2gwLCBzY3JhdGNoMik7Ci0gICAg
aml0LnJzaGlmdDY0KEFzc2VtYmx5SGVscGVyczo6VHJ1c3RlZEltbTMyKDE3KSwgc2NyYXRjaDIp
OworICAgIGppdC5yc2hpZnQ2NChzY3JhdGNoMCwgQXNzZW1ibHlIZWxwZXJzOjpUcnVzdGVkSW1t
MzIoMTcpLCBzY3JhdGNoMik7CiAgICAgaml0LnhvcjY0KHNjcmF0Y2gyLCBzY3JhdGNoMCk7CiAK
ICAgICAvLyB4IF49IHkgXiAoeSA+PiAyNik7Ci0gICAgaml0Lm1vdmUoc2NyYXRjaDEsIHNjcmF0
Y2gyKTsKLSAgICBqaXQucnNoaWZ0NjQoQXNzZW1ibHlIZWxwZXJzOjpUcnVzdGVkSW1tMzIoMjYp
LCBzY3JhdGNoMik7CisgICAgaml0LnJzaGlmdDY0KHNjcmF0Y2gxLCBBc3NlbWJseUhlbHBlcnM6
OlRydXN0ZWRJbW0zMigyNiksIHNjcmF0Y2gyKTsKICAgICBqaXQueG9yNjQoc2NyYXRjaDEsIHNj
cmF0Y2gyKTsKICAgICBqaXQueG9yNjQoc2NyYXRjaDIsIHNjcmF0Y2gwKTsKIApAQCAtODc3LDgg
Kzg3NCw3IEBAIHZvaWQgZW1pdFJhbmRvbVRodW5rSW1wbChBc3NlbWJseUhlbHBlcnMmIGppdCwg
R1BSUmVnIHNjcmF0Y2gwLCBHUFJSZWcgc2NyYXRjaDEsCiAgICAgaml0LmFkZDY0KHNjcmF0Y2gx
LCBzY3JhdGNoMCk7CiAKICAgICAvLyBFeHRyYWN0IHJhbmRvbSA1M2JpdC4gWzAsIDUzXSBiaXQg
aXMgc2FmZSBpbnRlZ2VyIG51bWJlciByYW5nZXMgaW4gZG91YmxlIHJlcHJlc2VudGF0aW9uLgot
ICAgIGppdC5tb3ZlKEFzc2VtYmx5SGVscGVyczo6VHJ1c3RlZEltbTY0KCgxVUxMIDw8IDUzKSAt
IDEpLCBzY3JhdGNoMSk7Ci0gICAgaml0LmFuZDY0KHNjcmF0Y2gxLCBzY3JhdGNoMCk7CisgICAg
aml0LmFuZDY0KEFzc2VtYmx5SGVscGVyczo6VHJ1c3RlZEltbTY0KCgxVUxMIDw8IDUzKSAtIDEp
LCBzY3JhdGNoMCk7CiAgICAgLy8gTm93LCBzY3JhdGNoMCBpcyBhbHdheXMgaW4gcmFuZ2Ugb2Yg
aW50NjRfdC4gU2FmZSB0byBjb252ZXJ0IGl0IHRvIGRvdWJsZSB3aXRoIGN2dHNpMnNkcS4KICAg
ICBqaXQuY29udmVydEludDY0VG9Eb3VibGUoc2NyYXRjaDAsIHJlc3VsdCk7CiAKQEAgLTEyNTQs
MzkgKzEyNTAsMzEgQEAgdm9pZCBBc3NlbWJseUhlbHBlcnM6OndhbmdzSW50NjRIYXNoKEdQUlJl
ZyBpbnB1dEFuZFJlc3VsdCwgR1BSUmVnIHNjcmF0Y2gpCiB7CiAgICAgR1BSUmVnIGlucHV0ID0g
aW5wdXRBbmRSZXN1bHQ7CiAgICAgLy8ga2V5ICs9IH4oa2V5IDw8IDMyKTsKLSAgICBtb3ZlKGlu
cHV0LCBzY3JhdGNoKTsKLSAgICBsc2hpZnQ2NChUcnVzdGVkSW1tMzIoMzIpLCBzY3JhdGNoKTsK
KyAgICBsc2hpZnQ2NChpbnB1dCwgVHJ1c3RlZEltbTMyKDMyKSwgc2NyYXRjaCk7CiAgICAgbm90
NjQoc2NyYXRjaCk7CiAgICAgYWRkNjQoc2NyYXRjaCwgaW5wdXQpOwogICAgIC8vIGtleSBePSAo
a2V5ID4+IDIyKTsKLSAgICBtb3ZlKGlucHV0LCBzY3JhdGNoKTsKLSAgICB1cnNoaWZ0NjQoVHJ1
c3RlZEltbTMyKDIyKSwgc2NyYXRjaCk7CisgICAgdXJzaGlmdDY0KGlucHV0LCBUcnVzdGVkSW1t
MzIoMjIpLCBzY3JhdGNoKTsKICAgICB4b3I2NChzY3JhdGNoLCBpbnB1dCk7CiAgICAgLy8ga2V5
ICs9IH4oa2V5IDw8IDEzKTsKLSAgICBtb3ZlKGlucHV0LCBzY3JhdGNoKTsKLSAgICBsc2hpZnQ2
NChUcnVzdGVkSW1tMzIoMTMpLCBzY3JhdGNoKTsKKyAgICBsc2hpZnQ2NChpbnB1dCwgVHJ1c3Rl
ZEltbTMyKDEzKSwgc2NyYXRjaCk7CiAgICAgbm90NjQoc2NyYXRjaCk7CiAgICAgYWRkNjQoc2Ny
YXRjaCwgaW5wdXQpOwogICAgIC8vIGtleSBePSAoa2V5ID4+IDgpOwotICAgIG1vdmUoaW5wdXQs
IHNjcmF0Y2gpOwotICAgIHVyc2hpZnQ2NChUcnVzdGVkSW1tMzIoOCksIHNjcmF0Y2gpOworICAg
IHVyc2hpZnQ2NChpbnB1dCwgVHJ1c3RlZEltbTMyKDgpLCBzY3JhdGNoKTsKICAgICB4b3I2NChz
Y3JhdGNoLCBpbnB1dCk7CiAgICAgLy8ga2V5ICs9IChrZXkgPDwgMyk7Ci0gICAgbW92ZShpbnB1
dCwgc2NyYXRjaCk7Ci0gICAgbHNoaWZ0NjQoVHJ1c3RlZEltbTMyKDMpLCBzY3JhdGNoKTsKKyAg
ICBsc2hpZnQ2NChpbnB1dCwgVHJ1c3RlZEltbTMyKDMpLCBzY3JhdGNoKTsKICAgICBhZGQ2NChz
Y3JhdGNoLCBpbnB1dCk7CiAgICAgLy8ga2V5IF49IChrZXkgPj4gMTUpOwotICAgIG1vdmUoaW5w
dXQsIHNjcmF0Y2gpOwotICAgIHVyc2hpZnQ2NChUcnVzdGVkSW1tMzIoMTUpLCBzY3JhdGNoKTsK
KyAgICB1cnNoaWZ0NjQoaW5wdXQsIFRydXN0ZWRJbW0zMigxNSksIHNjcmF0Y2gpOwogICAgIHhv
cjY0KHNjcmF0Y2gsIGlucHV0KTsKICAgICAvLyBrZXkgKz0gfihrZXkgPDwgMjcpOwotICAgIG1v
dmUoaW5wdXQsIHNjcmF0Y2gpOwotICAgIGxzaGlmdDY0KFRydXN0ZWRJbW0zMigyNyksIHNjcmF0
Y2gpOworICAgIGxzaGlmdDY0KGlucHV0LCBUcnVzdGVkSW1tMzIoMjcpLCBzY3JhdGNoKTsKICAg
ICBub3Q2NChzY3JhdGNoKTsKICAgICBhZGQ2NChzY3JhdGNoLCBpbnB1dCk7CiAgICAgLy8ga2V5
IF49IChrZXkgPj4gMzEpOwotICAgIG1vdmUoaW5wdXQsIHNjcmF0Y2gpOwotICAgIHVyc2hpZnQ2
NChUcnVzdGVkSW1tMzIoMzEpLCBzY3JhdGNoKTsKKyAgICB1cnNoaWZ0NjQoaW5wdXQsIFRydXN0
ZWRJbW0zMigzMSksIHNjcmF0Y2gpOwogICAgIHhvcjY0KHNjcmF0Y2gsIGlucHV0KTsKIAogICAg
IC8vIHJldHVybiBzdGF0aWNfY2FzdDx1bnNpZ25lZD4ocmVzdWx0KQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRCaXRBbmRHZW5lcmF0b3IuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2ppdC9KSVRCaXRBbmRHZW5lcmF0b3IuY3BwCmluZGV4IDEyZDEyMDVlOGQ3
MS4uNTJiMDRjNjNkYmNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJ
VEJpdEFuZEdlbmVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRC
aXRBbmRHZW5lcmF0b3IuY3BwCkBAIC01NSw3ICs1NSw3IEBAIHZvaWQgSklUQml0QW5kR2VuZXJh
dG9yOjpnZW5lcmF0ZUZhc3RQYXRoKENDYWxsSGVscGVycyYgaml0KQogI2lmIFVTRShKU1ZBTFVF
NjQpCiAgICAgICAgICAgICBqaXQuYW5kNjQoQ0NhbGxIZWxwZXJzOjpJbW0zMihjb25zdE9wci5h
c0NvbnN0SW50MzIoKSksIHZhci5wYXlsb2FkR1BSKCksIG1fcmVzdWx0LnBheWxvYWRHUFIoKSk7
CiAgICAgICAgICAgICBpZiAoY29uc3RPcHIuYXNDb25zdEludDMyKCkgPj0gMCkKLSAgICAgICAg
ICAgICAgICBqaXQub3I2NChHUFJJbmZvOjpudW1iZXJUYWdSZWdpc3RlciwgbV9yZXN1bHQucGF5
bG9hZEdQUigpKTsKKyAgICAgICAgICAgICAgICBqaXQuYm94SW50MzIobV9yZXN1bHQucGF5bG9h
ZEdQUigpLCBtX3Jlc3VsdCk7CiAjZWxzZQogICAgICAgICAgICAgaml0Lm1vdmVWYWx1ZVJlZ3Mo
dmFyLCBtX3Jlc3VsdCk7CiAgICAgICAgICAgICBqaXQuYW5kMzIoQ0NhbGxIZWxwZXJzOjpJbW0z
Mihjb25zdE9wci5hc0NvbnN0SW50MzIoKSksIG1fcmVzdWx0LnBheWxvYWRHUFIoKSk7CkBAIC02
OSw3ICs2OSw3IEBAIHZvaWQgSklUQml0QW5kR2VuZXJhdG9yOjpnZW5lcmF0ZUZhc3RQYXRoKEND
YWxsSGVscGVycyYgaml0KQogICAgIGlmIChtX2xlZnRPcGVyYW5kLmRlZmluaXRlbHlJc0Jvb2xl
YW4oKSAmJiBtX3JpZ2h0T3BlcmFuZC5kZWZpbml0ZWx5SXNCb29sZWFuKCkpIHsKICAgICAgICAg
aml0LmFuZDMyKG1fbGVmdC5wYXlsb2FkR1BSKCksIG1fcmlnaHQucGF5bG9hZEdQUigpLCBtX3Jl
c3VsdC5wYXlsb2FkR1BSKCkpOwogICAgICAgICBqaXQuYW5kMzIoQ0NhbGxIZWxwZXJzOjpUcnVz
dGVkSW1tMzIoMSksIG1fcmVzdWx0LnBheWxvYWRHUFIoKSk7Ci0gICAgICAgIGppdC5vcjY0KEdQ
UkluZm86Om51bWJlclRhZ1JlZ2lzdGVyLCBtX3Jlc3VsdC5wYXlsb2FkR1BSKCkpOworICAgICAg
ICBqaXQuYm94SW50MzIobV9yZXN1bHQucGF5bG9hZEdQUigpLCBtX3Jlc3VsdCk7CiAgICAgICAg
IHJldHVybjsKICAgICB9CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9qaXQvSklUQml0T3JHZW5lcmF0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9K
SVRCaXRPckdlbmVyYXRvci5jcHAKaW5kZXggMTJiZjgyYTIxNWIzLi40Y2E5MDIyZjMyNzggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUQml0T3JHZW5lcmF0b3IuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUQml0T3JHZW5lcmF0b3IuY3BwCkBA
IC00NSwxMyArNDUsNyBAQCB2b2lkIEpJVEJpdE9yR2VuZXJhdG9yOjpnZW5lcmF0ZUZhc3RQYXRo
KENDYWxsSGVscGVycyYgaml0KQogCiAgICAgICAgIGlmIChjb25zdE9wci5hc0NvbnN0SW50MzIo
KSkgewogI2lmIFVTRShKU1ZBTFVFNjQpCi0jaWYgQ1BVKEFSTTY0KQogICAgICAgICAgICAgaml0
Lm9yNjQoQ0NhbGxIZWxwZXJzOjpUcnVzdGVkSW1tNjQoc3RhdGljX2Nhc3Q8dWludDY0X3Q+KHN0
YXRpY19jYXN0PHVpbnQzMl90Pihjb25zdE9wci5hc0NvbnN0SW50MzIoKSkpKSwgdmFyLnBheWxv
YWRHUFIoKSwgbV9yZXN1bHQucGF5bG9hZEdQUigpKTsKLSNlbHNlCi0gICAgICAgICAgICBqaXQu
bW92ZVZhbHVlUmVncyh2YXIsIG1fcmVzdWx0KTsKLSAgICAgICAgICAgIGppdC5vcjMyKENDYWxs
SGVscGVyczo6SW1tMzIoY29uc3RPcHIuYXNDb25zdEludDMyKCkpLCBtX3Jlc3VsdC5wYXlsb2Fk
R1BSKCkpOwotICAgICAgICAgICAgaml0Lm9yNjQoR1BSSW5mbzo6bnVtYmVyVGFnUmVnaXN0ZXIs
IG1fcmVzdWx0LnBheWxvYWRHUFIoKSk7Ci0jZW5kaWYKICNlbHNlCiAgICAgICAgICAgICBqaXQu
bW92ZVZhbHVlUmVncyh2YXIsIG1fcmVzdWx0KTsKICAgICAgICAgICAgIGppdC5vcjMyKENDYWxs
SGVscGVyczo6SW1tMzIoY29uc3RPcHIuYXNDb25zdEludDMyKCkpLCBtX3Jlc3VsdC5wYXlsb2Fk
R1BSKCkpOwpAQCAtNjUsNyArNTksNyBAQCB2b2lkIEpJVEJpdE9yR2VuZXJhdG9yOjpnZW5lcmF0
ZUZhc3RQYXRoKENDYWxsSGVscGVycyYgaml0KQogICAgIGlmIChtX2xlZnRPcGVyYW5kLmRlZmlu
aXRlbHlJc0Jvb2xlYW4oKSAmJiBtX3JpZ2h0T3BlcmFuZC5kZWZpbml0ZWx5SXNCb29sZWFuKCkp
IHsKICAgICAgICAgaml0Lm9yMzIobV9sZWZ0LnBheWxvYWRHUFIoKSwgbV9yaWdodC5wYXlsb2Fk
R1BSKCksIG1fcmVzdWx0LnBheWxvYWRHUFIoKSk7CiAgICAgICAgIGppdC5hbmQzMihDQ2FsbEhl
bHBlcnM6OlRydXN0ZWRJbW0zMigxKSwgbV9yZXN1bHQucGF5bG9hZEdQUigpKTsKLSAgICAgICAg
aml0Lm9yNjQoR1BSSW5mbzo6bnVtYmVyVGFnUmVnaXN0ZXIsIG1fcmVzdWx0LnBheWxvYWRHUFIo
KSk7CisgICAgICAgIGppdC5ib3hJbnQzMihtX3Jlc3VsdC5wYXlsb2FkR1BSKCksIG1fcmVzdWx0
KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2ppdC9KSVRCaXRYb3JHZW5lcmF0b3IuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ppdC9KSVRCaXRYb3JHZW5lcmF0b3IuY3BwCmluZGV4IDQ1NTkwYWE3MzJlNS4uMDI5
MjM0NzAwZDdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVEJpdFhv
ckdlbmVyYXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRCaXRYb3JH
ZW5lcmF0b3IuY3BwCkBAIC00NSw3ICs0NSw3IEBAIHZvaWQgSklUQml0WG9yR2VuZXJhdG9yOjpn
ZW5lcmF0ZUZhc3RQYXRoKENDYWxsSGVscGVycyYgaml0KQogICAgICAgICAKICNpZiBVU0UoSlNW
QUxVRTY0KQogICAgICAgICBqaXQueG9yMzIoQ0NhbGxIZWxwZXJzOjpJbW0zMihjb25zdE9wci5h
c0NvbnN0SW50MzIoKSksIHZhci5wYXlsb2FkR1BSKCksIG1fcmVzdWx0LnBheWxvYWRHUFIoKSk7
Ci0gICAgICAgIGppdC5vcjY0KEdQUkluZm86Om51bWJlclRhZ1JlZ2lzdGVyLCBtX3Jlc3VsdC5w
YXlsb2FkR1BSKCkpOworICAgICAgICBqaXQuYm94SW50MzIobV9yZXN1bHQucGF5bG9hZEdQUigp
LCBtX3Jlc3VsdCk7CiAjZWxzZQogICAgICAgICBqaXQubW92ZVZhbHVlUmVncyh2YXIsIG1fcmVz
dWx0KTsKICAgICAgICAgaml0LnhvcjMyKENDYWxsSGVscGVyczo6SW1tMzIoY29uc3RPcHIuYXND
b25zdEludDMyKCkpLCBtX3Jlc3VsdC5wYXlsb2FkR1BSKCkpOwpAQCAtNTcsNyArNTcsNyBAQCB2
b2lkIEpJVEJpdFhvckdlbmVyYXRvcjo6Z2VuZXJhdGVGYXN0UGF0aChDQ2FsbEhlbHBlcnMmIGpp
dCkKICAgICBpZiAobV9sZWZ0T3BlcmFuZC5kZWZpbml0ZWx5SXNCb29sZWFuKCkgJiYgbV9yaWdo
dE9wZXJhbmQuZGVmaW5pdGVseUlzQm9vbGVhbigpKSB7CiAgICAgICAgIGppdC54b3IzMihtX2xl
ZnQucGF5bG9hZEdQUigpLCBtX3JpZ2h0LnBheWxvYWRHUFIoKSwgbV9yZXN1bHQucGF5bG9hZEdQ
UigpKTsKICAgICAgICAgaml0LmFuZDMyKENDYWxsSGVscGVyczo6VHJ1c3RlZEltbTMyKDEpLCBt
X3Jlc3VsdC5wYXlsb2FkR1BSKCkpOwotICAgICAgICBqaXQub3I2NChHUFJJbmZvOjpudW1iZXJU
YWdSZWdpc3RlciwgbV9yZXN1bHQucGF5bG9hZEdQUigpKTsKKyAgICAgICAgaml0LmJveEludDMy
KG1fcmVzdWx0LnBheWxvYWRHUFIoKSwgbV9yZXN1bHQpOwogICAgICAgICByZXR1cm47CiAgICAg
fQogI2VuZGlmCkBAIC03MCw3ICs3MCw3IEBAIHZvaWQgSklUQml0WG9yR2VuZXJhdG9yOjpnZW5l
cmF0ZUZhc3RQYXRoKENDYWxsSGVscGVycyYgaml0KQogCiAjaWYgVVNFKEpTVkFMVUU2NCkKICAg
ICBqaXQueG9yMzIobV9yaWdodC5wYXlsb2FkR1BSKCksIG1fbGVmdC5wYXlsb2FkR1BSKCksIG1f
cmVzdWx0LnBheWxvYWRHUFIoKSk7Ci0gICAgaml0Lm9yNjQoR1BSSW5mbzo6bnVtYmVyVGFnUmVn
aXN0ZXIsIG1fcmVzdWx0LnBheWxvYWRHUFIoKSk7CisgICAgaml0LmJveEludDMyKG1fcmVzdWx0
LnBheWxvYWRHUFIoKSwgbV9yZXN1bHQpOwogI2Vsc2UKICAgICBqaXQubW92ZVZhbHVlUmVncyht
X2xlZnQsIG1fcmVzdWx0KTsKICAgICBqaXQueG9yMzIobV9yaWdodC5wYXlsb2FkR1BSKCksIG1f
cmVzdWx0LnBheWxvYWRHUFIoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aml0L0pJVERpdkdlbmVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVERp
dkdlbmVyYXRvci5jcHAKaW5kZXggMDc2NzI4YzdlNDI4Li5mY2Y4MjUyNzNlZWQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklURGl2R2VuZXJhdG9yLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVERpdkdlbmVyYXRvci5jcHAKQEAgLTEyMyw3ICsx
MjMsNiBAQCB2b2lkIEpJVERpdkdlbmVyYXRvcjo6Z2VuZXJhdGVGYXN0UGF0aChDQ2FsbEhlbHBl
cnMmIGppdCkKICNpZiBVU0UoSlNWQUxVRTY0KQogICAgIGppdC5tb3ZlRG91YmxlVG82NChtX2xl
ZnRGUFIsIG1fc2NyYXRjaEdQUik7CiAgICAgQ0NhbGxIZWxwZXJzOjpKdW1wIG5vdERvdWJsZVpl
cm8gPSBqaXQuYnJhbmNoVGVzdDY0KENDYWxsSGVscGVyczo6Tm9uWmVybywgbV9zY3JhdGNoR1BS
KTsKLQogICAgIGppdC5tb3ZlKEdQUkluZm86Om51bWJlclRhZ1JlZ2lzdGVyLCBtX3Jlc3VsdC5w
YXlsb2FkR1BSKCkpOwogICAgIG1fZW5kSnVtcExpc3QuYXBwZW5kKGppdC5qdW1wKCkpOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVElubGluZXMuaCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUSW5saW5lcy5oCmluZGV4IGE2YjY0NjM5NTJlYy4uMjgy
MjVjYmJmN2U2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVElubGlu
ZXMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVElubGluZXMuaApAQCAtNDIw
LDggKzQyMCw3IEBAIEFMV0FZU19JTkxJTkUgdm9pZCBKSVQ6OmVtaXRQdXRWaXJ0dWFsUmVnaXN0
ZXIoVmlydHVhbFJlZ2lzdGVyIGRzdCwgUmVnaXN0ZXJJRCBmCiAKIEFMV0FZU19JTkxJTkUgSklU
OjpKdW1wIEpJVDo6ZW1pdEp1bXBJZk5vdEludChSZWdpc3RlcklEIHJlZzEsIFJlZ2lzdGVySUQg
cmVnMiwgUmVnaXN0ZXJJRCBzY3JhdGNoKQogewotICAgIG1vdmUocmVnMSwgc2NyYXRjaCk7Ci0g
ICAgYW5kNjQocmVnMiwgc2NyYXRjaCk7CisgICAgYW5kNjQocmVnMSwgcmVnMiwgc2NyYXRjaCk7
CiAgICAgcmV0dXJuIGJyYW5jaElmTm90SW50MzIoc2NyYXRjaCk7CiB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUTGVmdFNoaWZ0R2VuZXJhdG9yLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUTGVmdFNoaWZ0R2VuZXJhdG9yLmNwcAppbmRleCA5
OTBiYTE3NjJjZWQuLmRhNWJkYzgyNmQ3ZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2ppdC9KSVRMZWZ0U2hpZnRHZW5lcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9qaXQvSklUTGVmdFNoaWZ0R2VuZXJhdG9yLmNwcApAQCAtNDQsMTMgKzQ0LDEyIEBAIHZv
aWQgSklUTGVmdFNoaWZ0R2VuZXJhdG9yOjpnZW5lcmF0ZUZhc3RQYXRoKENDYWxsSGVscGVycyYg
aml0KQogCiAgICAgbV9kaWRFbWl0RmFzdFBhdGggPSB0cnVlOwogCisjaWYgVVNFKEpTVkFMVUUz
Ml82NCkKICAgICBpZiAobV9yaWdodE9wZXJhbmQuaXNDb25zdEludDMyKCkpIHsKICAgICAgICAg
Ly8gVHJ5IHRvIGRvIChpbnRWYXIgPDwgaW50Q29uc3RhbnQpLgogICAgICAgICBtX3Nsb3dQYXRo
SnVtcExpc3QuYXBwZW5kKGppdC5icmFuY2hJZk5vdEludDMyKG1fbGVmdCkpOwotCiAgICAgICAg
IGppdC5tb3ZlVmFsdWVSZWdzKG1fbGVmdCwgbV9yZXN1bHQpOwogICAgICAgICBqaXQubHNoaWZ0
MzIoQ0NhbGxIZWxwZXJzOjpJbW0zMihtX3JpZ2h0T3BlcmFuZC5hc0NvbnN0SW50MzIoKSksIG1f
cmVzdWx0LnBheWxvYWRHUFIoKSk7Ci0KICAgICB9IGVsc2UgewogICAgICAgICAvLyBUcnkgdG8g
ZG8gKGludENvbnN0YW50IDw8IGludFZhcikgb3IgKGludFZhciA8PCBpbnRWYXIpLgogICAgICAg
ICBtX3Nsb3dQYXRoSnVtcExpc3QuYXBwZW5kKGppdC5icmFuY2hJZk5vdEludDMyKG1fcmlnaHQp
KTsKQEAgLTYyLDkgKzYxLDcgQEAgdm9pZCBKSVRMZWZ0U2hpZnRHZW5lcmF0b3I6OmdlbmVyYXRl
RmFzdFBhdGgoQ0NhbGxIZWxwZXJzJiBqaXQpCiAgICAgICAgIH0KIAogICAgICAgICBpZiAobV9s
ZWZ0T3BlcmFuZC5pc0NvbnN0SW50MzIoKSkgewotI2lmIFVTRShKU1ZBTFVFMzJfNjQpCiAgICAg
ICAgICAgICBqaXQubW92ZShtX3JpZ2h0LnRhZ0dQUigpLCBtX3Jlc3VsdC50YWdHUFIoKSk7Ci0j
ZW5kaWYKICAgICAgICAgICAgIGppdC5tb3ZlKENDYWxsSGVscGVyczo6SW1tMzIobV9sZWZ0T3Bl
cmFuZC5hc0NvbnN0SW50MzIoKSksIG1fcmVzdWx0LnBheWxvYWRHUFIoKSk7CiAgICAgICAgIH0g
ZWxzZSB7CiAgICAgICAgICAgICBtX3Nsb3dQYXRoSnVtcExpc3QuYXBwZW5kKGppdC5icmFuY2hJ
Zk5vdEludDMyKG1fbGVmdCkpOwpAQCAtNzMsOSArNzAsMjIgQEAgdm9pZCBKSVRMZWZ0U2hpZnRH
ZW5lcmF0b3I6OmdlbmVyYXRlRmFzdFBhdGgoQ0NhbGxIZWxwZXJzJiBqaXQpCiAKICAgICAgICAg
aml0LmxzaGlmdDMyKHJpZ2h0T3BlcmFuZEdQUiwgbV9yZXN1bHQucGF5bG9hZEdQUigpKTsKICAg
ICB9Ci0KLSNpZiBVU0UoSlNWQUxVRTY0KQotICAgIGppdC5vcjY0KEdQUkluZm86Om51bWJlclRh
Z1JlZ2lzdGVyLCBtX3Jlc3VsdC5wYXlsb2FkR1BSKCkpOworI2Vsc2UKKyAgICBpZiAobV9yaWdo
dE9wZXJhbmQuaXNDb25zdEludDMyKCkpIHsKKyAgICAgICAgLy8gVHJ5IHRvIGRvIChpbnRWYXIg
PDwgaW50Q29uc3RhbnQpLgorICAgICAgICBtX3Nsb3dQYXRoSnVtcExpc3QuYXBwZW5kKGppdC5i
cmFuY2hJZk5vdEludDMyKG1fbGVmdCkpOworICAgICAgICBqaXQubHNoaWZ0MzIobV9sZWZ0LnBh
eWxvYWRHUFIoKSwgQ0NhbGxIZWxwZXJzOjpJbW0zMihtX3JpZ2h0T3BlcmFuZC5hc0NvbnN0SW50
MzIoKSksIG1fcmVzdWx0LnBheWxvYWRHUFIoKSk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgLy8g
VHJ5IHRvIGRvIChpbnRDb25zdGFudCA8PCBpbnRWYXIpIG9yIChpbnRWYXIgPDwgaW50VmFyKS4K
KyAgICAgICAgbV9zbG93UGF0aEp1bXBMaXN0LmFwcGVuZChqaXQuYnJhbmNoSWZOb3RJbnQzMiht
X3JpZ2h0KSk7CisgICAgICAgIGlmIChtX2xlZnRPcGVyYW5kLmlzQ29uc3RJbnQzMigpKQorICAg
ICAgICAgICAgaml0LmxzaGlmdDMyKENDYWxsSGVscGVyczo6SW1tMzIobV9sZWZ0T3BlcmFuZC5h
c0NvbnN0SW50MzIoKSksIG1fcmlnaHQucGF5bG9hZEdQUigpLCBtX3Jlc3VsdC5wYXlsb2FkR1BS
KCkpOworICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIG1fc2xvd1BhdGhKdW1wTGlzdC5hcHBl
bmQoaml0LmJyYW5jaElmTm90SW50MzIobV9sZWZ0KSk7CisgICAgICAgICAgICBqaXQubHNoaWZ0
MzIobV9sZWZ0LnBheWxvYWRHUFIoKSwgbV9yaWdodC5wYXlsb2FkR1BSKCksIG1fcmVzdWx0LnBh
eWxvYWRHUFIoKSk7CisgICAgICAgIH0KKyAgICB9CisgICAgaml0LmJveEludDMyKG1fcmVzdWx0
LnBheWxvYWRHUFIoKSwgbV9yZXN1bHQpOwogI2VuZGlmCiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUTmVnR2VuZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9qaXQvSklUTmVnR2VuZXJhdG9yLmNwcAppbmRleCBjMWM3NzJjODliZDQuLjYxN2Ji
NzhjZWFjNiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVROZWdHZW5l
cmF0b3IuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUTmVnR2VuZXJhdG9y
LmNwcApAQCAtNjYsMTMgKzY2LDcgQEAgSklUTWF0aElDSW5saW5lUmVzdWx0IEpJVE5lZ0dlbmVy
YXRvcjo6Z2VuZXJhdGVJbmxpbmUoQ0NhbGxIZWxwZXJzJiBqaXQsIE1hdGhJQ0cKICAgICAgICAg
c3RhdGUuc2xvd1BhdGhKdW1wcy5hcHBlbmQoaml0LmJyYW5jaElmSW50MzIobV9zcmMpKTsKICAg
ICAgICAgc3RhdGUuc2xvd1BhdGhKdW1wcy5hcHBlbmQoaml0LmJyYW5jaElmTm90TnVtYmVyKG1f
c3JjLCBtX3NjcmF0Y2hHUFIpKTsKICNpZiBVU0UoSlNWQUxVRTY0KQotICAgICAgICBpZiAobV9z
cmMucGF5bG9hZEdQUigpICE9IG1fcmVzdWx0LnBheWxvYWRHUFIoKSkgewotICAgICAgICAgICAg
aml0Lm1vdmUoQ0NhbGxIZWxwZXJzOjpUcnVzdGVkSW1tNjQoc3RhdGljX2Nhc3Q8aW50NjRfdD4o
MXVsbCA8PCA2MykpLCBtX3Jlc3VsdC5wYXlsb2FkR1BSKCkpOwotICAgICAgICAgICAgaml0Lnhv
cjY0KG1fc3JjLnBheWxvYWRHUFIoKSwgbV9yZXN1bHQucGF5bG9hZEdQUigpKTsKLSAgICAgICAg
fSBlbHNlIHsKLSAgICAgICAgICAgIGppdC5tb3ZlKENDYWxsSGVscGVyczo6VHJ1c3RlZEltbTY0
KHN0YXRpY19jYXN0PGludDY0X3Q+KDF1bGwgPDwgNjMpKSwgbV9zY3JhdGNoR1BSKTsKLSAgICAg
ICAgICAgIGppdC54b3I2NChtX3NjcmF0Y2hHUFIsIG1fcmVzdWx0LnBheWxvYWRHUFIoKSk7Ci0g
ICAgICAgIH0KKyAgICAgICAgaml0LnhvcjY0KENDYWxsSGVscGVyczo6VHJ1c3RlZEltbTY0KHN0
YXRpY19jYXN0PGludDY0X3Q+KDF1bGwgPDwgNjMpKSwgbV9zcmMucGF5bG9hZEdQUigpLCBtX3Jl
c3VsdC5wYXlsb2FkR1BSKCkpOwogI2Vsc2UKICAgICAgICAgaml0Lm1vdmVWYWx1ZVJlZ3MobV9z
cmMsIG1fcmVzdWx0KTsKICAgICAgICAgaml0LnhvcjMyKENDYWxsSGVscGVyczo6VHJ1c3RlZElt
bTMyKDEgPDwgMzEpLCBtX3Jlc3VsdC50YWdHUFIoKSk7CkBAIC0xMTAsOCArMTA0LDcgQEAgYm9v
bCBKSVROZWdHZW5lcmF0b3I6OmdlbmVyYXRlRmFzdFBhdGgoQ0NhbGxIZWxwZXJzJiBqaXQsIEND
YWxsSGVscGVyczo6SnVtcExpc3QKIAogICAgIC8vIEZvciBhIGRvdWJsZSwgYWxsIHdlIG5lZWQg
dG8gZG8gaXMgdG8gaW52ZXJ0IHRoZSBzaWduIGJpdC4KICNpZiBVU0UoSlNWQUxVRTY0KQotICAg
IGppdC5tb3ZlKENDYWxsSGVscGVyczo6VHJ1c3RlZEltbTY0KChpbnQ2NF90KSgxdWxsIDw8IDYz
KSksIG1fc2NyYXRjaEdQUik7Ci0gICAgaml0LnhvcjY0KG1fc2NyYXRjaEdQUiwgbV9yZXN1bHQu
cGF5bG9hZEdQUigpKTsKKyAgICBqaXQueG9yNjQoQ0NhbGxIZWxwZXJzOjpUcnVzdGVkSW1tNjQo
KGludDY0X3QpKDF1bGwgPDwgNjMpKSwgbV9yZXN1bHQucGF5bG9hZEdQUigpKTsKICNlbHNlCiAg
ICAgaml0LnhvcjMyKENDYWxsSGVscGVyczo6VHJ1c3RlZEltbTMyKDEgPDwgMzEpLCBtX3Jlc3Vs
dC50YWdHUFIoKSk7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9q
aXQvSklUT3Bjb2Rlcy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVE9wY29kZXMu
Y3BwCmluZGV4IGQ4NGQ4NDFjMTAyNy4uZDNiOGU3NTY1YWViIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaml0L0pJVE9wY29kZXMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9qaXQvSklUT3Bjb2Rlcy5jcHAKQEAgLTg5MSw4ICs4OTEsNyBAQCB2b2lkIEpJVDo6Y29t
cGlsZU9wU3RyaWN0RXEoY29uc3QgSlNJbnN0cnVjdGlvbiogY3VycmVudEluc3RydWN0aW9uKQog
ICAgIGVtaXRQdXRWaXJ0dWFsUmVnaXN0ZXIoZHN0LCByZWdUNSk7CiAjZWxzZSAvLyBpZiAhVVNF
KEJJR0lOVDMyKQogICAgIC8vIEp1bXAgc2xvdyBpZiBib3RoIGFyZSBjZWxscyAodG8gY292ZXIg
c3RyaW5ncykuCi0gICAgbW92ZShyZWdUMCwgcmVnVDIpOwotICAgIG9yNjQocmVnVDEsIHJlZ1Qy
KTsKKyAgICBvcjY0KHJlZ1QxLCByZWdUMCwgcmVnVDIpOwogICAgIGFkZFNsb3dDYXNlKGJyYW5j
aElmQ2VsbChyZWdUMikpOwogCiAgICAgLy8gSnVtcCBzbG93IGlmIGVpdGhlciBpcyBhIGRvdWJs
ZS4gRmlyc3QgdGVzdCBpZiBpdCdzIGFuIGludGVnZXIsIHdoaWNoIGlzIGZpbmUsIGFuZCB0aGVu
IHRlc3QKQEAgLTEwNjAsOCArMTA1OSw3IEBAIHZvaWQgSklUOjpjb21waWxlT3BTdHJpY3RFcUp1
bXAoY29uc3QgSlNJbnN0cnVjdGlvbiogY3VycmVudEluc3RydWN0aW9uKQogICAgIH0KICNlbHNl
IC8vIGlmICFVU0UoQklHSU5UMzIpCiAgICAgLy8gSnVtcCBzbG93IGlmIGJvdGggYXJlIGNlbGxz
ICh0byBjb3ZlciBzdHJpbmdzKS4KLSAgICBtb3ZlKHJlZ1QwLCByZWdUMik7Ci0gICAgb3I2NChy
ZWdUMSwgcmVnVDIpOworICAgIG9yNjQocmVnVDEsIHJlZ1QwLCByZWdUMik7CiAgICAgYWRkU2xv
d0Nhc2UoYnJhbmNoSWZDZWxsKHJlZ1QyKSk7CiAKICAgICAvLyBKdW1wIHNsb3cgaWYgZWl0aGVy
IGlzIGEgZG91YmxlLiBGaXJzdCB0ZXN0IGlmIGl0J3MgYW4gaW50ZWdlciwgd2hpY2ggaXMgZmlu
ZSwgYW5kIHRoZW4gdGVzdApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9K
SVRSaWdodFNoaWZ0R2VuZXJhdG9yLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklU
UmlnaHRTaGlmdEdlbmVyYXRvci5jcHAKaW5kZXggNzZjMjUxYmIxYmVmLi5jNjdlNGEzYzBhOTIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUUmlnaHRTaGlmdEdlbmVy
YXRvci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRSaWdodFNoaWZ0R2Vu
ZXJhdG9yLmNwcApAQCAtNDQsNiArNDQsNyBAQCB2b2lkIEpJVFJpZ2h0U2hpZnRHZW5lcmF0b3I6
OmdlbmVyYXRlRmFzdFBhdGgoQ0NhbGxIZWxwZXJzJiBqaXQpCiAKICAgICBtX2RpZEVtaXRGYXN0
UGF0aCA9IHRydWU7CiAKKyNpZiBVU0UoSlNWQUxVRTMyXzY0KQogICAgIGlmIChtX3JpZ2h0T3Bl
cmFuZC5pc0NvbnN0SW50MzIoKSkgewogICAgICAgICAvLyBUcnkgdG8gZG8gKGludFZhciA+PiBp
bnRDb25zdGFudCkuCiAgICAgICAgIENDYWxsSGVscGVyczo6SnVtcCBub3RJbnQgPSBqaXQuYnJh
bmNoSWZOb3RJbnQzMihtX2xlZnQpOwpAQCAtNTUsOTcgKzU2LDE0MyBAQCB2b2lkIEpJVFJpZ2h0
U2hpZnRHZW5lcmF0b3I6OmdlbmVyYXRlRmFzdFBhdGgoQ0NhbGxIZWxwZXJzJiBqaXQpCiAgICAg
ICAgICAgICAgICAgaml0LnJzaGlmdDMyKENDYWxsSGVscGVyczo6SW1tMzIoc2hpZnRBbW91bnQp
LCBtX3Jlc3VsdC5wYXlsb2FkR1BSKCkpOwogICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAg
ICAgIGppdC51cnNoaWZ0MzIoQ0NhbGxIZWxwZXJzOjpJbW0zMihzaGlmdEFtb3VudCksIG1fcmVz
dWx0LnBheWxvYWRHUFIoKSk7Ci0jaWYgVVNFKEpTVkFMVUU2NCkKLSAgICAgICAgICAgIGppdC5v
cjY0KEdQUkluZm86Om51bWJlclRhZ1JlZ2lzdGVyLCBtX3Jlc3VsdC5wYXlsb2FkR1BSKCkpOwot
I2VuZGlmCiAgICAgICAgIH0KKyAgICAgICAgbV9lbmRKdW1wTGlzdC5hcHBlbmQoaml0Lmp1bXAo
KSk7IC8vIFRlcm1pbmF0ZSB0aGUgYWJvdmUgY2FzZSBiZWZvcmUgZW1pdHRpbmcgbW9yZSBjb2Rl
LgogCi0gICAgICAgIGlmIChqaXQuc3VwcG9ydHNGbG9hdGluZ1BvaW50VHJ1bmNhdGUoKSkgewot
ICAgICAgICAgICAgbV9lbmRKdW1wTGlzdC5hcHBlbmQoaml0Lmp1bXAoKSk7IC8vIFRlcm1pbmF0
ZSB0aGUgYWJvdmUgY2FzZSBiZWZvcmUgZW1pdHRpbmcgbW9yZSBjb2RlLgorICAgICAgICAvLyBU
cnkgdG8gZG8gKGRvdWJsZVZhciA+PiBpbnRDb25zdGFudCkuCisgICAgICAgIG5vdEludC5saW5r
KCZqaXQpOwogCi0gICAgICAgICAgICAvLyBUcnkgdG8gZG8gKGRvdWJsZVZhciA+PiBpbnRDb25z
dGFudCkuCi0gICAgICAgICAgICBub3RJbnQubGluaygmaml0KTsKKyAgICAgICAgbV9zbG93UGF0
aEp1bXBMaXN0LmFwcGVuZChqaXQuYnJhbmNoSWZOb3ROdW1iZXIobV9sZWZ0LCBtX3NjcmF0Y2hH
UFIpKTsKIAotICAgICAgICAgICAgbV9zbG93UGF0aEp1bXBMaXN0LmFwcGVuZChqaXQuYnJhbmNo
SWZOb3ROdW1iZXIobV9sZWZ0LCBtX3NjcmF0Y2hHUFIpKTsKKyAgICAgICAgaml0LnVuYm94RG91
YmxlTm9uRGVzdHJ1Y3RpdmUobV9sZWZ0LCBtX2xlZnRGUFIsIG1fc2NyYXRjaEdQUik7CisgICAg
ICAgIG1fc2xvd1BhdGhKdW1wTGlzdC5hcHBlbmQoaml0LmJyYW5jaFRydW5jYXRlRG91YmxlVG9J
bnQzMihtX2xlZnRGUFIsIG1fc2NyYXRjaEdQUikpOwogCi0gICAgICAgICAgICBqaXQudW5ib3hE
b3VibGVOb25EZXN0cnVjdGl2ZShtX2xlZnQsIG1fbGVmdEZQUiwgbV9zY3JhdGNoR1BSKTsKLSNp
ZiBDUFUoQVJNNjQpCi0gICAgICAgICAgICBpZiAoTWFjcm9Bc3NlbWJsZXJBUk02NDo6c3VwcG9y
dHNEb3VibGVUb0ludDMyQ29udmVyc2lvblVzaW5nSmF2YVNjcmlwdFNlbWFudGljcygpKQotICAg
ICAgICAgICAgICAgIGppdC5jb252ZXJ0RG91YmxlVG9JbnQzMlVzaW5nSmF2YVNjcmlwdFNlbWFu
dGljcyhtX2xlZnRGUFIsIG1fc2NyYXRjaEdQUik7CisgICAgICAgIGlmIChzaGlmdEFtb3VudCkg
eworICAgICAgICAgICAgaWYgKG1fc2hpZnRUeXBlID09IFNpZ25lZFNoaWZ0KQorICAgICAgICAg
ICAgICAgIGppdC5yc2hpZnQzMihDQ2FsbEhlbHBlcnM6OkltbTMyKHNoaWZ0QW1vdW50KSwgbV9z
Y3JhdGNoR1BSKTsKICAgICAgICAgICAgIGVsc2UKLSNlbmRpZgotICAgICAgICAgICAgewotICAg
ICAgICAgICAgICAgIG1fc2xvd1BhdGhKdW1wTGlzdC5hcHBlbmQoaml0LmJyYW5jaFRydW5jYXRl
RG91YmxlVG9JbnQzMihtX2xlZnRGUFIsIG1fc2NyYXRjaEdQUikpOwotICAgICAgICAgICAgfQot
Ci0gICAgICAgICAgICBpZiAoc2hpZnRBbW91bnQpIHsKLSAgICAgICAgICAgICAgICBpZiAobV9z
aGlmdFR5cGUgPT0gU2lnbmVkU2hpZnQpCi0gICAgICAgICAgICAgICAgICAgIGppdC5yc2hpZnQz
MihDQ2FsbEhlbHBlcnM6OkltbTMyKHNoaWZ0QW1vdW50KSwgbV9zY3JhdGNoR1BSKTsKLSAgICAg
ICAgICAgICAgICBlbHNlCi0gICAgICAgICAgICAgICAgICAgIGppdC51cnNoaWZ0MzIoQ0NhbGxI
ZWxwZXJzOjpJbW0zMihzaGlmdEFtb3VudCksIG1fc2NyYXRjaEdQUik7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgICAgICBqaXQuYm94SW50MzIobV9zY3JhdGNoR1BSLCBtX3Jlc3VsdCk7CisgICAg
ICAgICAgICAgICAgaml0LnVyc2hpZnQzMihDQ2FsbEhlbHBlcnM6OkltbTMyKHNoaWZ0QW1vdW50
KSwgbV9zY3JhdGNoR1BSKTsKKyAgICAgICAgfQorICAgICAgICBqaXQuYm94SW50MzIobV9zY3Jh
dGNoR1BSLCBtX3Jlc3VsdCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CiAKLSAgICAgICAgfSBl
bHNlCi0gICAgICAgICAgICBtX3Nsb3dQYXRoSnVtcExpc3QuYXBwZW5kKG5vdEludCk7CisgICAg
Ly8gVHJ5IHRvIGRvIChpbnRDb25zdGFudCA+PiBpbnRWYXIpIG9yIChpbnRWYXIgPj4gaW50VmFy
KS4KKyAgICBtX3Nsb3dQYXRoSnVtcExpc3QuYXBwZW5kKGppdC5icmFuY2hJZk5vdEludDMyKG1f
cmlnaHQpKTsKIAorICAgIEdQUlJlZyByaWdodE9wZXJhbmRHUFIgPSBtX3JpZ2h0LnBheWxvYWRH
UFIoKTsKKyAgICBpZiAocmlnaHRPcGVyYW5kR1BSID09IG1fcmVzdWx0LnBheWxvYWRHUFIoKSkK
KyAgICAgICAgcmlnaHRPcGVyYW5kR1BSID0gbV9zY3JhdGNoR1BSOworCisgICAgQ0NhbGxIZWxw
ZXJzOjpKdW1wIGxlZnROb3RJbnQ7CisgICAgaWYgKG1fbGVmdE9wZXJhbmQuaXNDb25zdEludDMy
KCkpIHsKKyAgICAgICAgaml0Lm1vdmUobV9yaWdodC5wYXlsb2FkR1BSKCksIHJpZ2h0T3BlcmFu
ZEdQUik7CisgICAgICAgIGppdC5tb3ZlKG1fcmlnaHQudGFnR1BSKCksIG1fcmVzdWx0LnRhZ0dQ
UigpKTsKKyAgICAgICAgaml0Lm1vdmUoQ0NhbGxIZWxwZXJzOjpJbW0zMihtX2xlZnRPcGVyYW5k
LmFzQ29uc3RJbnQzMigpKSwgbV9yZXN1bHQucGF5bG9hZEdQUigpKTsKICAgICB9IGVsc2Ugewot
ICAgICAgICAvLyBUcnkgdG8gZG8gKGludENvbnN0YW50ID4+IGludFZhcikgb3IgKGludFZhciA+
PiBpbnRWYXIpLgotICAgICAgICBtX3Nsb3dQYXRoSnVtcExpc3QuYXBwZW5kKGppdC5icmFuY2hJ
Zk5vdEludDMyKG1fcmlnaHQpKTsKKyAgICAgICAgbGVmdE5vdEludCA9IGppdC5icmFuY2hJZk5v
dEludDMyKG1fbGVmdCk7CisgICAgICAgIGppdC5tb3ZlKG1fcmlnaHQucGF5bG9hZEdQUigpLCBy
aWdodE9wZXJhbmRHUFIpOworICAgICAgICBqaXQubW92ZVZhbHVlUmVncyhtX2xlZnQsIG1fcmVz
dWx0KTsKKyAgICB9CiAKLSAgICAgICAgR1BSUmVnIHJpZ2h0T3BlcmFuZEdQUiA9IG1fcmlnaHQu
cGF5bG9hZEdQUigpOwotICAgICAgICBpZiAocmlnaHRPcGVyYW5kR1BSID09IG1fcmVzdWx0LnBh
eWxvYWRHUFIoKSkKLSAgICAgICAgICAgIHJpZ2h0T3BlcmFuZEdQUiA9IG1fc2NyYXRjaEdQUjsK
KyAgICBpZiAobV9zaGlmdFR5cGUgPT0gU2lnbmVkU2hpZnQpCisgICAgICAgIGppdC5yc2hpZnQz
MihyaWdodE9wZXJhbmRHUFIsIG1fcmVzdWx0LnBheWxvYWRHUFIoKSk7CisgICAgZWxzZQorICAg
ICAgICBqaXQudXJzaGlmdDMyKHJpZ2h0T3BlcmFuZEdQUiwgbV9yZXN1bHQucGF5bG9hZEdQUigp
KTsKKyAgICBpZiAobV9sZWZ0T3BlcmFuZC5pc0NvbnN0SW50MzIoKSkKKyAgICAgICAgcmV0dXJu
OwogCi0gICAgICAgIENDYWxsSGVscGVyczo6SnVtcCBsZWZ0Tm90SW50OwotICAgICAgICBpZiAo
bV9sZWZ0T3BlcmFuZC5pc0NvbnN0SW50MzIoKSkgewotICAgICAgICAgICAgaml0Lm1vdmUobV9y
aWdodC5wYXlsb2FkR1BSKCksIHJpZ2h0T3BlcmFuZEdQUik7Ci0jaWYgVVNFKEpTVkFMVUUzMl82
NCkKLSAgICAgICAgICAgIGppdC5tb3ZlKG1fcmlnaHQudGFnR1BSKCksIG1fcmVzdWx0LnRhZ0dQ
UigpKTsKLSNlbmRpZgotICAgICAgICAgICAgaml0Lm1vdmUoQ0NhbGxIZWxwZXJzOjpJbW0zMiht
X2xlZnRPcGVyYW5kLmFzQ29uc3RJbnQzMigpKSwgbV9yZXN1bHQucGF5bG9hZEdQUigpKTsKLSAg
ICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGxlZnROb3RJbnQgPSBqaXQuYnJhbmNoSWZOb3RJ
bnQzMihtX2xlZnQpOwotICAgICAgICAgICAgaml0Lm1vdmUobV9yaWdodC5wYXlsb2FkR1BSKCks
IHJpZ2h0T3BlcmFuZEdQUik7Ci0gICAgICAgICAgICBqaXQubW92ZVZhbHVlUmVncyhtX2xlZnQs
IG1fcmVzdWx0KTsKLSAgICAgICAgfQorICAgIG1fZW5kSnVtcExpc3QuYXBwZW5kKGppdC5qdW1w
KCkpOyAvLyBUZXJtaW5hdGUgdGhlIGFib3ZlIGNhc2UgYmVmb3JlIGVtaXR0aW5nIG1vcmUgY29k
ZS4KIAotICAgICAgICBpZiAobV9zaGlmdFR5cGUgPT0gU2lnbmVkU2hpZnQpCi0gICAgICAgICAg
ICBqaXQucnNoaWZ0MzIocmlnaHRPcGVyYW5kR1BSLCBtX3Jlc3VsdC5wYXlsb2FkR1BSKCkpOwot
ICAgICAgICBlbHNlCi0gICAgICAgICAgICBqaXQudXJzaGlmdDMyKHJpZ2h0T3BlcmFuZEdQUiwg
bV9yZXN1bHQucGF5bG9hZEdQUigpKTsKLSNpZiBVU0UoSlNWQUxVRTY0KQotICAgICAgICBqaXQu
b3I2NChHUFJJbmZvOjpudW1iZXJUYWdSZWdpc3RlciwgbV9yZXN1bHQucGF5bG9hZEdQUigpKTsK
LSNlbmRpZgotICAgICAgICBpZiAobV9sZWZ0T3BlcmFuZC5pc0NvbnN0SW50MzIoKSkKLSAgICAg
ICAgICAgIHJldHVybjsKKyAgICAvLyBUcnkgdG8gZG8gKGRvdWJsZVZhciA+PiBpbnRWYXIpLgor
ICAgIGxlZnROb3RJbnQubGluaygmaml0KTsKKworICAgIG1fc2xvd1BhdGhKdW1wTGlzdC5hcHBl
bmQoaml0LmJyYW5jaElmTm90TnVtYmVyKG1fbGVmdCwgbV9zY3JhdGNoR1BSKSk7CisgICAgaml0
LnVuYm94RG91YmxlTm9uRGVzdHJ1Y3RpdmUobV9sZWZ0LCBtX2xlZnRGUFIsIG1fc2NyYXRjaEdQ
Uik7CisgICAgbV9zbG93UGF0aEp1bXBMaXN0LmFwcGVuZChqaXQuYnJhbmNoVHJ1bmNhdGVEb3Vi
bGVUb0ludDMyKG1fbGVmdEZQUiwgbV9zY3JhdGNoR1BSKSk7CiAKLSAgICAgICAgaWYgKGppdC5z
dXBwb3J0c0Zsb2F0aW5nUG9pbnRUcnVuY2F0ZSgpKSB7Ci0gICAgICAgICAgICBtX2VuZEp1bXBM
aXN0LmFwcGVuZChqaXQuanVtcCgpKTsgLy8gVGVybWluYXRlIHRoZSBhYm92ZSBjYXNlIGJlZm9y
ZSBlbWl0dGluZyBtb3JlIGNvZGUuCisgICAgaWYgKG1fc2hpZnRUeXBlID09IFNpZ25lZFNoaWZ0
KQorICAgICAgICBqaXQucnNoaWZ0MzIobV9yaWdodC5wYXlsb2FkR1BSKCksIG1fc2NyYXRjaEdQ
Uik7CisgICAgZWxzZQorICAgICAgICBqaXQudXJzaGlmdDMyKG1fcmlnaHQucGF5bG9hZEdQUigp
LCBtX3NjcmF0Y2hHUFIpOworICAgIGppdC5ib3hJbnQzMihtX3NjcmF0Y2hHUFIsIG1fcmVzdWx0
KTsKKyNlbHNlCisgICAgaWYgKG1fcmlnaHRPcGVyYW5kLmlzQ29uc3RJbnQzMigpKSB7CisgICAg
ICAgIC8vIFRyeSB0byBkbyAoaW50VmFyID4+IGludENvbnN0YW50KS4KKyAgICAgICAgQ0NhbGxI
ZWxwZXJzOjpKdW1wIG5vdEludCA9IGppdC5icmFuY2hJZk5vdEludDMyKG1fbGVmdCk7CiAKLSAg
ICAgICAgICAgIC8vIFRyeSB0byBkbyAoZG91YmxlVmFyID4+IGludFZhcikuCi0gICAgICAgICAg
ICBsZWZ0Tm90SW50LmxpbmsoJmppdCk7CisgICAgICAgIGludDMyX3Qgc2hpZnRBbW91bnQgPSBt
X3JpZ2h0T3BlcmFuZC5hc0NvbnN0SW50MzIoKSAmIDB4MWY7CisgICAgICAgIGlmIChzaGlmdEFt
b3VudCkgeworICAgICAgICAgICAgaWYgKG1fc2hpZnRUeXBlID09IFNpZ25lZFNoaWZ0KQorICAg
ICAgICAgICAgICAgIGppdC5yc2hpZnQzMihtX2xlZnQucGF5bG9hZEdQUigpLCBDQ2FsbEhlbHBl
cnM6OkltbTMyKHNoaWZ0QW1vdW50KSwgbV9yZXN1bHQucGF5bG9hZEdQUigpKTsKKyAgICAgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgICAgICBqaXQudXJzaGlmdDMyKG1fbGVmdC5wYXlsb2FkR1BS
KCksIENDYWxsSGVscGVyczo6SW1tMzIoc2hpZnRBbW91bnQpLCBtX3Jlc3VsdC5wYXlsb2FkR1BS
KCkpOworICAgICAgICAgICAgaml0LmJveEludDMyKG1fcmVzdWx0LnBheWxvYWRHUFIoKSwgbV9y
ZXN1bHQpOworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIGppdC5tb3ZlVmFsdWVSZWdzKG1f
bGVmdCwgbV9yZXN1bHQpOworICAgICAgICBtX2VuZEp1bXBMaXN0LmFwcGVuZChqaXQuanVtcCgp
KTsgLy8gVGVybWluYXRlIHRoZSBhYm92ZSBjYXNlIGJlZm9yZSBlbWl0dGluZyBtb3JlIGNvZGUu
CiAKLSAgICAgICAgICAgIG1fc2xvd1BhdGhKdW1wTGlzdC5hcHBlbmQoaml0LmJyYW5jaElmTm90
TnVtYmVyKG1fbGVmdCwgbV9zY3JhdGNoR1BSKSk7Ci0gICAgICAgICAgICBqaXQudW5ib3hEb3Vi
bGVOb25EZXN0cnVjdGl2ZShtX2xlZnQsIG1fbGVmdEZQUiwgbV9zY3JhdGNoR1BSKTsKKyAgICAg
ICAgLy8gVHJ5IHRvIGRvIChkb3VibGVWYXIgPj4gaW50Q29uc3RhbnQpLgorICAgICAgICBub3RJ
bnQubGluaygmaml0KTsKKyAgICAgICAgbV9zbG93UGF0aEp1bXBMaXN0LmFwcGVuZChqaXQuYnJh
bmNoSWZOb3ROdW1iZXIobV9sZWZ0LCBtX3NjcmF0Y2hHUFIpKTsKKyAgICAgICAgaml0LnVuYm94
RG91YmxlTm9uRGVzdHJ1Y3RpdmUobV9sZWZ0LCBtX2xlZnRGUFIsIG1fc2NyYXRjaEdQUik7CiAj
aWYgQ1BVKEFSTTY0KQotICAgICAgICAgICAgaWYgKE1hY3JvQXNzZW1ibGVyQVJNNjQ6OnN1cHBv
cnRzRG91YmxlVG9JbnQzMkNvbnZlcnNpb25Vc2luZ0phdmFTY3JpcHRTZW1hbnRpY3MoKSkKLSAg
ICAgICAgICAgICAgICBqaXQuY29udmVydERvdWJsZVRvSW50MzJVc2luZ0phdmFTY3JpcHRTZW1h
bnRpY3MobV9sZWZ0RlBSLCBtX3NjcmF0Y2hHUFIpOwotICAgICAgICAgICAgZWxzZQorICAgICAg
ICBpZiAoTWFjcm9Bc3NlbWJsZXJBUk02NDo6c3VwcG9ydHNEb3VibGVUb0ludDMyQ29udmVyc2lv
blVzaW5nSmF2YVNjcmlwdFNlbWFudGljcygpKQorICAgICAgICAgICAgaml0LmNvbnZlcnREb3Vi
bGVUb0ludDMyVXNpbmdKYXZhU2NyaXB0U2VtYW50aWNzKG1fbGVmdEZQUiwgbV9zY3JhdGNoR1BS
KTsKKyAgICAgICAgZWxzZQogI2VuZGlmCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAg
bV9zbG93UGF0aEp1bXBMaXN0LmFwcGVuZChqaXQuYnJhbmNoVHJ1bmNhdGVEb3VibGVUb0ludDMy
KG1fbGVmdEZQUiwgbV9zY3JhdGNoR1BSKSk7Ci0gICAgICAgICAgICB9CisgICAgICAgIHsKKyAg
ICAgICAgICAgIG1fc2xvd1BhdGhKdW1wTGlzdC5hcHBlbmQoaml0LmJyYW5jaFRydW5jYXRlRG91
YmxlVG9JbnQzMihtX2xlZnRGUFIsIG1fc2NyYXRjaEdQUikpOworICAgICAgICB9CiAKKyAgICAg
ICAgaWYgKHNoaWZ0QW1vdW50KSB7CiAgICAgICAgICAgICBpZiAobV9zaGlmdFR5cGUgPT0gU2ln
bmVkU2hpZnQpCi0gICAgICAgICAgICAgICAgaml0LnJzaGlmdDMyKG1fcmlnaHQucGF5bG9hZEdQ
UigpLCBtX3NjcmF0Y2hHUFIpOworICAgICAgICAgICAgICAgIGppdC5yc2hpZnQzMihDQ2FsbEhl
bHBlcnM6OkltbTMyKHNoaWZ0QW1vdW50KSwgbV9zY3JhdGNoR1BSKTsKICAgICAgICAgICAgIGVs
c2UKLSAgICAgICAgICAgICAgICBqaXQudXJzaGlmdDMyKG1fcmlnaHQucGF5bG9hZEdQUigpLCBt
X3NjcmF0Y2hHUFIpOwotICAgICAgICAgICAgaml0LmJveEludDMyKG1fc2NyYXRjaEdQUiwgbV9y
ZXN1bHQpOworICAgICAgICAgICAgICAgIGppdC51cnNoaWZ0MzIoQ0NhbGxIZWxwZXJzOjpJbW0z
MihzaGlmdEFtb3VudCksIG1fc2NyYXRjaEdQUik7CisgICAgICAgIH0KKyAgICAgICAgaml0LmJv
eEludDMyKG1fc2NyYXRjaEdQUiwgbV9yZXN1bHQpOworICAgICAgICByZXR1cm47CisgICAgfQor
ICAgIC8vIFRyeSB0byBkbyAoaW50Q29uc3RhbnQgPj4gaW50VmFyKSBvciAoaW50VmFyID4+IGlu
dFZhcikuCisgICAgbV9zbG93UGF0aEp1bXBMaXN0LmFwcGVuZChqaXQuYnJhbmNoSWZOb3RJbnQz
MihtX3JpZ2h0KSk7CiAKLSAgICAgICAgfSBlbHNlCi0gICAgICAgICAgICBtX3Nsb3dQYXRoSnVt
cExpc3QuYXBwZW5kKGxlZnROb3RJbnQpOworICAgIGlmIChtX2xlZnRPcGVyYW5kLmlzQ29uc3RJ
bnQzMigpKSB7CisgICAgICAgIGlmIChtX3NoaWZ0VHlwZSA9PSBTaWduZWRTaGlmdCkKKyAgICAg
ICAgICAgIGppdC5yc2hpZnQzMihDQ2FsbEhlbHBlcnM6OkltbTMyKG1fbGVmdE9wZXJhbmQuYXND
b25zdEludDMyKCkpLCBtX3JpZ2h0LnBheWxvYWRHUFIoKSwgbV9yZXN1bHQucGF5bG9hZEdQUigp
KTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgaml0LnVyc2hpZnQzMihDQ2FsbEhlbHBlcnM6
OkltbTMyKG1fbGVmdE9wZXJhbmQuYXNDb25zdEludDMyKCkpLCBtX3JpZ2h0LnBheWxvYWRHUFIo
KSwgbV9yZXN1bHQucGF5bG9hZEdQUigpKTsKKyAgICAgICAgaml0LmJveEludDMyKG1fcmVzdWx0
LnBheWxvYWRHUFIoKSwgbV9yZXN1bHQpOworICAgICAgICByZXR1cm47CiAgICAgfQorCisgICAg
Q0NhbGxIZWxwZXJzOjpKdW1wIGxlZnROb3RJbnQgPSBqaXQuYnJhbmNoSWZOb3RJbnQzMihtX2xl
ZnQpOworICAgIGlmIChtX3NoaWZ0VHlwZSA9PSBTaWduZWRTaGlmdCkKKyAgICAgICAgaml0LnJz
aGlmdDMyKG1fbGVmdC5wYXlsb2FkR1BSKCksIG1fcmlnaHQucGF5bG9hZEdQUigpLCBtX3Jlc3Vs
dC5wYXlsb2FkR1BSKCkpOworICAgIGVsc2UKKyAgICAgICAgaml0LnVyc2hpZnQzMihtX2xlZnQu
cGF5bG9hZEdQUigpLCBtX3JpZ2h0LnBheWxvYWRHUFIoKSwgbV9yZXN1bHQucGF5bG9hZEdQUigp
KTsKKyAgICBqaXQuYm94SW50MzIobV9yZXN1bHQucGF5bG9hZEdQUigpLCBtX3Jlc3VsdCk7Cisg
ICAgbV9lbmRKdW1wTGlzdC5hcHBlbmQoaml0Lmp1bXAoKSk7IC8vIFRlcm1pbmF0ZSB0aGUgYWJv
dmUgY2FzZSBiZWZvcmUgZW1pdHRpbmcgbW9yZSBjb2RlLgorCisgICAgLy8gVHJ5IHRvIGRvIChk
b3VibGVWYXIgPj4gaW50VmFyKS4KKyAgICBsZWZ0Tm90SW50LmxpbmsoJmppdCk7CisgICAgbV9z
bG93UGF0aEp1bXBMaXN0LmFwcGVuZChqaXQuYnJhbmNoSWZOb3ROdW1iZXIobV9sZWZ0LCBtX3Nj
cmF0Y2hHUFIpKTsKKyAgICBqaXQudW5ib3hEb3VibGVOb25EZXN0cnVjdGl2ZShtX2xlZnQsIG1f
bGVmdEZQUiwgbV9zY3JhdGNoR1BSKTsKKyNpZiBDUFUoQVJNNjQpCisgICAgaWYgKE1hY3JvQXNz
ZW1ibGVyQVJNNjQ6OnN1cHBvcnRzRG91YmxlVG9JbnQzMkNvbnZlcnNpb25Vc2luZ0phdmFTY3Jp
cHRTZW1hbnRpY3MoKSkKKyAgICAgICAgaml0LmNvbnZlcnREb3VibGVUb0ludDMyVXNpbmdKYXZh
U2NyaXB0U2VtYW50aWNzKG1fbGVmdEZQUiwgbV9zY3JhdGNoR1BSKTsKKyAgICBlbHNlCisjZW5k
aWYKKyAgICB7CisgICAgICAgIG1fc2xvd1BhdGhKdW1wTGlzdC5hcHBlbmQoaml0LmJyYW5jaFRy
dW5jYXRlRG91YmxlVG9JbnQzMihtX2xlZnRGUFIsIG1fc2NyYXRjaEdQUikpOworICAgIH0KKwor
ICAgIGlmIChtX3NoaWZ0VHlwZSA9PSBTaWduZWRTaGlmdCkKKyAgICAgICAgaml0LnJzaGlmdDMy
KG1fcmlnaHQucGF5bG9hZEdQUigpLCBtX3NjcmF0Y2hHUFIpOworICAgIGVsc2UKKyAgICAgICAg
aml0LnVyc2hpZnQzMihtX3JpZ2h0LnBheWxvYWRHUFIoKSwgbV9zY3JhdGNoR1BSKTsKKyAgICBq
aXQuYm94SW50MzIobV9zY3JhdGNoR1BSLCBtX3Jlc3VsdCk7CisjZW5kaWYKIH0KIAogfSAvLyBu
YW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVFN1
YkdlbmVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVFN1YkdlbmVyYXRv
ci5jcHAKaW5kZXggMTVmZWYwYTgxYzdhLi41YzFmODJhMGYzYTcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUU3ViR2VuZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvaml0L0pJVFN1YkdlbmVyYXRvci5jcHAKQEAgLTY3LDEwICs2NywxMiBAQCBK
SVRNYXRoSUNJbmxpbmVSZXN1bHQgSklUU3ViR2VuZXJhdG9yOjpnZW5lcmF0ZUlubGluZShDQ2Fs
bEhlbHBlcnMmIGppdCwgTWF0aElDRwogICAgICAgICBBU1NFUlQoIW1fbGVmdE9wZXJhbmQuaXND
b25zdEludDMyKCkgfHwgIW1fcmlnaHRPcGVyYW5kLmlzQ29uc3RJbnQzMigpKTsKICAgICAgICAg
c3RhdGUuc2xvd1BhdGhKdW1wcy5hcHBlbmQoaml0LmJyYW5jaElmTm90SW50MzIobV9sZWZ0KSk7
CiAgICAgICAgIHN0YXRlLnNsb3dQYXRoSnVtcHMuYXBwZW5kKGppdC5icmFuY2hJZk5vdEludDMy
KG1fcmlnaHQpKTsKLQorI2lmIENQVShBUk02NCkKKyAgICAgICAgc3RhdGUuc2xvd1BhdGhKdW1w
cy5hcHBlbmQoaml0LmJyYW5jaFN1YjMyKENDYWxsSGVscGVyczo6T3ZlcmZsb3csIG1fbGVmdC5w
YXlsb2FkR1BSKCksIG1fcmlnaHQucGF5bG9hZEdQUigpLCBtX3NjcmF0Y2hHUFIpKTsKKyNlbHNl
CiAgICAgICAgIGppdC5tb3ZlKG1fbGVmdC5wYXlsb2FkR1BSKCksIG1fc2NyYXRjaEdQUik7CiAg
ICAgICAgIHN0YXRlLnNsb3dQYXRoSnVtcHMuYXBwZW5kKGppdC5icmFuY2hTdWIzMihDQ2FsbEhl
bHBlcnM6Ok92ZXJmbG93LCBtX3JpZ2h0LnBheWxvYWRHUFIoKSwgbV9zY3JhdGNoR1BSKSk7Ci0K
KyNlbmRpZgogICAgICAgICBqaXQuYm94SW50MzIobV9zY3JhdGNoR1BSLCBtX3Jlc3VsdCk7CiAg
ICAgICAgIHJldHVybiBKSVRNYXRoSUNJbmxpbmVSZXN1bHQ6OkdlbmVyYXRlZEZhc3RQYXRoOwog
ICAgIH0KQEAgLTkxLDkgKzkzLDEyIEBAIGJvb2wgSklUU3ViR2VuZXJhdG9yOjpnZW5lcmF0ZUZh
c3RQYXRoKENDYWxsSGVscGVycyYgaml0LCBDQ2FsbEhlbHBlcnM6Okp1bXBMaXN0CiAgICAgQ0Nh
bGxIZWxwZXJzOjpKdW1wIGxlZnROb3RJbnQgPSBqaXQuYnJhbmNoSWZOb3RJbnQzMihtX2xlZnQp
OwogICAgIENDYWxsSGVscGVyczo6SnVtcCByaWdodE5vdEludCA9IGppdC5icmFuY2hJZk5vdElu
dDMyKG1fcmlnaHQpOwogCisjaWYgQ1BVKEFSTTY0KQorICAgIHNsb3dQYXRoSnVtcExpc3QuYXBw
ZW5kKGppdC5icmFuY2hTdWIzMihDQ2FsbEhlbHBlcnM6Ok92ZXJmbG93LCBtX2xlZnQucGF5bG9h
ZEdQUigpLCBtX3JpZ2h0LnBheWxvYWRHUFIoKSwgbV9zY3JhdGNoR1BSKSk7CisjZWxzZQogICAg
IGppdC5tb3ZlKG1fbGVmdC5wYXlsb2FkR1BSKCksIG1fc2NyYXRjaEdQUik7CiAgICAgc2xvd1Bh
dGhKdW1wTGlzdC5hcHBlbmQoaml0LmJyYW5jaFN1YjMyKENDYWxsSGVscGVyczo6T3ZlcmZsb3cs
IG1fcmlnaHQucGF5bG9hZEdQUigpLCBtX3NjcmF0Y2hHUFIpKTsKLQorI2VuZGlmCiAgICAgaml0
LmJveEludDMyKG1fc2NyYXRjaEdQUiwgbV9yZXN1bHQpOwogCiAgICAgZW5kSnVtcExpc3QuYXBw
ZW5kKGppdC5qdW1wKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9T
ZXR1cFZhcmFyZ3NGcmFtZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L1NldHVwVmFy
YXJnc0ZyYW1lLmNwcAppbmRleCBmZTVjYjlkY2M4OTAuLjRhNTgxZjIxMzhkYyAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9TZXR1cFZhcmFyZ3NGcmFtZS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9TZXR1cFZhcmFyZ3NGcmFtZS5jcHAKQEAgLTM2LDIy
ICszNiwxOSBAQCBuYW1lc3BhY2UgSlNDIHsKIAogdm9pZCBlbWl0U2V0VmFyYXJnc0ZyYW1lKEND
YWxsSGVscGVycyYgaml0LCBHUFJSZWcgbGVuZ3RoR1BSLCBib29sIGxlbmd0aEluY2x1ZGVzVGhp
cywgR1BSUmVnIG51bVVzZWRTbG90c0dQUiwgR1BSUmVnIHJlc3VsdEdQUikKIHsKLSAgICBqaXQu
bW92ZShudW1Vc2VkU2xvdHNHUFIsIHJlc3VsdEdQUik7CiAgICAgLy8gV2UgcmVhbGx5IHdhbnQg
dG8gbWFrZSBzdXJlIHRoZSBzaXplIG9mIHRoZSBuZXcgY2FsbCBmcmFtZSBpcyBhIG11bHRpcGxl
IG9mCiAgICAgLy8gc3RhY2tBbGlnbm1lbnRSZWdpc3RlcnMoKSwgaG93ZXZlciBpdCBpcyBlYXNp
ZXIgdG8gYWNjb21wbGlzaCB0aGlzIGJ5CiAgICAgLy8gcm91bmRpbmcgbnVtVXNlZFNsb3RzR1BS
IHRvIHRoZSBuZXh0IG11bHRpcGxlIG9mIHN0YWNrQWxpZ25tZW50UmVnaXN0ZXJzKCkuCiAgICAg
Ly8gVG9nZXRoZXIgd2l0aCB0aGUgcm91bmRpbmcgYmVsb3csIHdlIHdpbGwgYXNzdXJlIHRoYXQg
dGhlIG5ldyBjYWxsIGZyYW1lIGlzCiAgICAgLy8gbG9jYXRlZCBvbiBhIHN0YWNrQWxpZ25tZW50
UmVnaXN0ZXJzKCkgYm91bmRhcnkgYW5kIGEgbXVsdGlwbGUgb2YKICAgICAvLyBzdGFja0FsaWdu
bWVudFJlZ2lzdGVycygpIGluIHNpemUuCi0gICAgaml0LmFkZFB0cihDQ2FsbEhlbHBlcnM6OlRy
dXN0ZWRJbW0zMihzdGFja0FsaWdubWVudFJlZ2lzdGVycygpIC0gMSksIHJlc3VsdEdQUik7Cisg
ICAgaml0LmFkZFB0cihDQ2FsbEhlbHBlcnM6OlRydXN0ZWRJbW0zMihzdGFja0FsaWdubWVudFJl
Z2lzdGVycygpIC0gMSksIG51bVVzZWRTbG90c0dQUiwgcmVzdWx0R1BSKTsKICAgICBqaXQuYW5k
UHRyKENDYWxsSGVscGVyczo6VHJ1c3RlZEltbTMyKH4oc3RhY2tBbGlnbm1lbnRSZWdpc3RlcnMo
KSAtIDEpKSwgcmVzdWx0R1BSKTsKIAotICAgIGppdC5hZGRQdHIobGVuZ3RoR1BSLCByZXN1bHRH
UFIpOwotICAgIGppdC5hZGRQdHIoQ0NhbGxIZWxwZXJzOjpUcnVzdGVkSW1tMzIoQ2FsbEZyYW1l
OjpoZWFkZXJTaXplSW5SZWdpc3RlcnMgKyAobGVuZ3RoSW5jbHVkZXNUaGlzID8gMCA6IDEpKSwg
cmVzdWx0R1BSKTsKLSAgICAKICAgICAvLyByZXN1bHRHUFIgbm93IGhhcyB0aGUgcmVxdWlyZWQg
ZnJhbWUgc2l6ZSBpbiBSZWdpc3RlciB1bml0cwogICAgIC8vIFJvdW5kIHJlc3VsdEdQUiB0byBu
ZXh0IG11bHRpcGxlIG9mIHN0YWNrQWxpZ25tZW50UmVnaXN0ZXJzKCkKLSAgICBqaXQuYWRkUHRy
KENDYWxsSGVscGVyczo6VHJ1c3RlZEltbTMyKHN0YWNrQWxpZ25tZW50UmVnaXN0ZXJzKCkgLSAx
KSwgcmVzdWx0R1BSKTsKKyAgICBqaXQuYWRkUHRyKGxlbmd0aEdQUiwgcmVzdWx0R1BSKTsKKyAg
ICBqaXQuYWRkUHRyKENDYWxsSGVscGVyczo6VHJ1c3RlZEltbTMyKENhbGxGcmFtZTo6aGVhZGVy
U2l6ZUluUmVnaXN0ZXJzICsgKGxlbmd0aEluY2x1ZGVzVGhpcyA/IDAgOiAxKSArIChzdGFja0Fs
aWdubWVudFJlZ2lzdGVycygpIC0gMSkpLCByZXN1bHRHUFIpOwogICAgIGppdC5hbmRQdHIoQ0Nh
bGxIZWxwZXJzOjpUcnVzdGVkSW1tMzIofihzdGFja0FsaWdubWVudFJlZ2lzdGVycygpIC0gMSkp
LCByZXN1bHRHUFIpOwogICAgIAogICAgIC8vIE5vdyByZXN1bHRHUFIgaGFzIHRoZSByaWdodCBz
dGFjayBmcmFtZSBvZmZzZXQgaW4gUmVnaXN0ZXIgdW5pdHMuCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUveWFyci9ZYXJySklULmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95
YXJyL1lhcnJKSVQuY3BwCmluZGV4IGRlNmFlMmNmNjk5OC4uMjlhMTMyMjk0ZmIyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJySklULmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUveWFyci9ZYXJySklULmNwcApAQCAtMzEyNyw4ICszMTI3LDcgQEAgY2xh
c3MgWWFyckdlbmVyYXRvciBmaW5hbCA6IHB1YmxpYyBZYXJySklUSW5mbyB7CiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc3RhdGljX2Fzc2VydChzaXplb2YoQm95ZXJNb29yZUJpdG1hcDo6
TWFwOjpXb3JkVHlwZSkgPT0gc2l6ZW9mKHVpbnQ2NF90KSk7CiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgc3RhdGljX2Fzc2VydCgxIDw8IDYgPT0gNjQpOwogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHN0YXRpY19hc3NlcnQoMSA8PCAoNiArIDEpID09IEJveWVyTW9vcmVCaXRtYXA6
Ok1hcDo6c2l6ZSgpKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBtX2ppdC5tb3ZlKG1f
cmVncy5yZWdUMCwgbV9yZWdzLnJlZ1QyKTsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBt
X2ppdC51cnNoaWZ0MzIoTWFjcm9Bc3NlbWJsZXI6OlRydXN0ZWRJbW0zMig2KSwgbV9yZWdzLnJl
Z1QyKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBtX2ppdC51cnNoaWZ0MzIobV9yZWdz
LnJlZ1QwLCBNYWNyb0Fzc2VtYmxlcjo6VHJ1c3RlZEltbTMyKDYpLCBtX3JlZ3MucmVnVDIpOwog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1faml0LmFuZDMyKE1hY3JvQXNzZW1ibGVyOjpU
cnVzdGVkSW1tMzIoMSksIG1fcmVncy5yZWdUMik7CiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgbV9qaXQubG9hZDY0KE1hY3JvQXNzZW1ibGVyOjpCYXNlSW5kZXgobV9yZWdzLnJlZ1QxLCBt
X3JlZ3MucmVnVDIsIE1hY3JvQXNzZW1ibGVyOjpUaW1lc0VpZ2h0KSwgbV9yZWdzLnJlZ1QyKTsK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXRjaGVkLmFwcGVuZChtX2ppdC5icmFuY2hU
ZXN0Qml0NjQoTWFjcm9Bc3NlbWJsZXI6Ok5vblplcm8sIG1fcmVncy5yZWdUMiwgbV9yZWdzLnJl
Z1QwKSk7IC8vIFdlIGNhbiBpZ25vcmUgdXBwZXIgYml0cyBzaW5jZSBtb2R1bG8tNjQgaXMgcGVy
Zm9ybWVkLgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>