<?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>224255</bug_id>
          
          <creation_ts>2021-04-06 18:01:41 -0700</creation_ts>
          <short_desc>[JSC] Use FixedVector more in JSC</short_desc>
          <delta_ts>2021-04-06 23:49:17 -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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1747720</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-04-06 18:01:41 -0700</bug_when>
    <thetext>[JSC] Use FixedVector more in JSC</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747723</commentid>
    <comment_count>1</comment_count>
      <attachid>425340</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2021-04-06 18:10:20 -0700</bug_when>
    <thetext>Created attachment 425340
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747731</commentid>
    <comment_count>2</comment_count>
      <attachid>425340</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2021-04-06 18:50:05 -0700</bug_when>
    <thetext>Comment on attachment 425340
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747780</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-04-06 23:48:07 -0700</bug_when>
    <thetext>Committed r275588: &lt;https://commits.webkit.org/r275588&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 425340.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1747781</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-04-06 23:49:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/76317258&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>425340</attachid>
            <date>2021-04-06 18:10:20 -0700</date>
            <delta_ts>2021-04-06 23:48:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-224255-20210406181019.patch</filename>
            <type>text/plain</type>
            <size>22139</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc1NTQyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBm
NGU0YzU2ZDgzMGIxMjkxMDk3M2E4ZmUzODI4ZjlkYmExZTllYWRkLi4xZjQ4MTQzNWEzMjhiZTU5
Nzk4MjIxN2E3ZDlkYmNhMjg1YmU0OWVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0NiBAQAorMjAyMS0wNC0wNiAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIFVzZSBGaXhlZFZlY3RvciBtb3JlIGluIEpTQworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI0MjU1CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXNlIEZpeGVkVmVjdG9yIG1v
cmUgYWdncmVzc2l2ZWx5LiBUaGlzIHJlZHVjZXMgc2l6ZW9mKEhvbGRlcikgc2luY2Ugc2l6ZW9m
KEZpeGVkVmVjdG9yKSBpcyA4CisgICAgICAgIHdoaWxlIHNpemVvZihWZWN0b3IpIGlzIDE2LiBB
bmQgc2luY2UgdGhpcyBhbGxvY2F0ZXMganVzdC1maXQgc2l6ZSwgdGhpcyBkb2VzIG5vdCB3YXN0
ZSBtZW1vcnkuCisKKyAgICAgICAgKiBieXRlY29kZS9CeXRlY29kZUxpdmVuZXNzQW5hbHlzaXMu
Y3BwOgorICAgICAgICAoSlNDOjpCeXRlY29kZUxpdmVuZXNzQW5hbHlzaXM6OmNvbXB1dGVGdWxs
TGl2ZW5lc3MpOgorICAgICAgICAqIGJ5dGVjb2RlL0J5dGVjb2RlTGl2ZW5lc3NBbmFseXNpcy5o
OgorICAgICAgICAqIGJ5dGVjb2RlL0Z1bGxCeXRlY29kZUxpdmVuZXNzLmg6CisgICAgICAgIChK
U0M6OkZ1bGxCeXRlY29kZUxpdmVuZXNzOjpGdWxsQnl0ZWNvZGVMaXZlbmVzcyk6CisgICAgICAg
ICogYnl0ZWNvZGUvVW5saW5rZWRFdmFsQ29kZUJsb2NrLmg6CisgICAgICAgICogYnl0ZWNvbXBp
bGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Qnl0ZWNvZGVHZW5lcmF0
b3I6OkJ5dGVjb2RlR2VuZXJhdG9yKToKKyAgICAgICAgKiBkZmcvREZHR3JhcGguY3BwOgorICAg
ICAgICAoSlNDOjpERkc6OkdyYXBoOjpsaXZlbmVzc0Zvcik6CisgICAgICAgICogZnRsL0ZUTEZv
ck9TUkVudHJ5SklUQ29kZS5oOgorICAgICAgICAqIGZ0bC9GVExMb3dlckRGR1RvQjMuY3BwOgor
ICAgICAgICAoSlNDOjpGVEw6OkRGRzo6TG93ZXJERkdUb0IzOjpsb3dlcik6CisgICAgICAgICog
ZnRsL0ZUTE9TUkV4aXQuY3BwOgorICAgICAgICAoSlNDOjpGVEw6Ok9TUkV4aXREZXNjcmlwdG9y
OjpwcmVwYXJlT1NSRXhpdEhhbmRsZSk6CisgICAgICAgICogZnRsL0ZUTE9TUkV4aXQuaDoKKyAg
ICAgICAgKiBmdGwvRlRMT1NSRXhpdENvbXBpbGVyLmNwcDoKKyAgICAgICAgKEpTQzo6RlRMOjpj
b21waWxlUmVjb3ZlcnkpOgorICAgICAgICAqIGhlYXAvTWFya2VkU3BhY2UuY3BwOgorICAgICAg
ICAoSlNDOjpNYXJrZWRTcGFjZTo6c3dlZXBQcmVjaXNlQWxsb2NhdGlvbnMpOgorICAgICAgICAq
IGppdC9SZWdpc3RlckF0T2Zmc2V0TGlzdC5jcHA6CisgICAgICAgIChKU0M6OlJlZ2lzdGVyQXRP
ZmZzZXRMaXN0OjpSZWdpc3RlckF0T2Zmc2V0TGlzdCk6CisgICAgICAgICogaml0L1JlZ2lzdGVy
QXRPZmZzZXRMaXN0Lmg6CisgICAgICAgIChKU0M6OlJlZ2lzdGVyQXRPZmZzZXRMaXN0OjpiZWdp
biBjb25zdCk6CisgICAgICAgIChKU0M6OlJlZ2lzdGVyQXRPZmZzZXRMaXN0OjplbmQgY29uc3Qp
OgorICAgICAgICAoSlNDOjpSZWdpc3RlckF0T2Zmc2V0TGlzdDo6Y2xlYXIpOiBEZWxldGVkLgor
ICAgICAgICAqIHJ1bnRpbWUvSlNHbG9iYWxPYmplY3QuaDoKKyAgICAgICAgKiBydW50aW1lL0pT
TW9kdWxlTmFtZXNwYWNlT2JqZWN0LmNwcDoKKyAgICAgICAgKEpTQzo6SlNNb2R1bGVOYW1lc3Bh
Y2VPYmplY3Q6OmZpbmlzaENyZWF0aW9uKToKKyAgICAgICAgKiBydW50aW1lL0pTTW9kdWxlTmFt
ZXNwYWNlT2JqZWN0Lmg6CisgICAgICAgICogeWFyci9ZYXJyUGF0dGVybi5oOgorICAgICAgICAo
SlNDOjpZYXJyOjpZYXJyUGF0dGVybjo6cmVzZXRGb3JSZXBhcnNpbmcpOgorCiAyMDIxLTA0LTA2
ICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CiAKICAgICAgICAgW1dURl0gSW50
cm9kdWNlIEZpeGVkVmVjdG9yIGFuZCB1c2UgaXQgZm9yIEZpeGVkT3BlcmFuZHMKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9CeXRlY29kZUxpdmVuZXNzQW5hbHlz
aXMuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0J5dGVjb2RlTGl2ZW5lc3NB
bmFseXNpcy5jcHAKaW5kZXggMTYxODI1MDQxNTc5ODAxYTlmNDI5NmFhYWM2ZTFjYzU5NzUyNmE3
Ni4uZTg2Y2UxODc3MTA3NThmNjgzYTEyN2M4OWQxNjJiNjVmYjQ0NWNlZSAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0J5dGVjb2RlTGl2ZW5lc3NBbmFseXNpcy5j
cHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0J5dGVjb2RlTGl2ZW5lc3NB
bmFseXNpcy5jcHAKQEAgLTQzLDE0ICs0MywxMyBAQCBCeXRlY29kZUxpdmVuZXNzQW5hbHlzaXM6
OkJ5dGVjb2RlTGl2ZW5lc3NBbmFseXNpcyhDb2RlQmxvY2sqIGNvZGVCbG9jaykKICAgICAgICAg
ZHVtcFJlc3VsdHMoY29kZUJsb2NrKTsKIH0KIAotdm9pZCBCeXRlY29kZUxpdmVuZXNzQW5hbHlz
aXM6OmNvbXB1dGVGdWxsTGl2ZW5lc3MoQ29kZUJsb2NrKiBjb2RlQmxvY2ssIEZ1bGxCeXRlY29k
ZUxpdmVuZXNzJiByZXN1bHQpCitzdGQ6OnVuaXF1ZV9wdHI8RnVsbEJ5dGVjb2RlTGl2ZW5lc3M+
IEJ5dGVjb2RlTGl2ZW5lc3NBbmFseXNpczo6Y29tcHV0ZUZ1bGxMaXZlbmVzcyhDb2RlQmxvY2sq
IGNvZGVCbG9jaykKIHsKICAgICBGYXN0Qml0VmVjdG9yIG91dDsKIAogICAgIHNpemVfdCBzaXpl
ID0gY29kZUJsb2NrLT5pbnN0cnVjdGlvbnMoKS5zaXplKCk7Ci0gICAgcmVzdWx0Lm1fdXNlc0Jl
Zm9yZS5yZXNpemUoc2l6ZSk7Ci0gICAgcmVzdWx0Lm1fdXNlc0FmdGVyLnJlc2l6ZShzaXplKTsK
LSAgICAKKyAgICBhdXRvIHJlc3VsdCA9IG1ha2VVbmlxdWU8RnVsbEJ5dGVjb2RlTGl2ZW5lc3M+
KHNpemUpOworCiAgICAgZm9yIChCeXRlY29kZUJhc2ljQmxvY2smIGJsb2NrIDogbV9ncmFwaC5i
YXNpY0Jsb2Nrc0luUmV2ZXJzZU9yZGVyKCkpIHsKICAgICAgICAgaWYgKGJsb2NrLmlzRW50cnlC
bG9jaygpIHx8IGJsb2NrLmlzRXhpdEJsb2NrKCkpCiAgICAgICAgICAgICBjb250aW51ZTsKQEAg
LTc5LDEyICs3OCwxNCBAQCB2b2lkIEJ5dGVjb2RlTGl2ZW5lc3NBbmFseXNpczo6Y29tcHV0ZUZ1
bGxMaXZlbmVzcyhDb2RlQmxvY2sqIGNvZGVCbG9jaywgRnVsbEJ5dAogCiAgICAgICAgICAgICAg
ICAgc3RlcE92ZXJCeXRlY29kZUluZGV4RGVmKGNvZGVCbG9jaywgaW5zdHJ1Y3Rpb25zLCBtX2dy
YXBoLCBieXRlY29kZUluZGV4LCBkZWYpOwogICAgICAgICAgICAgICAgIHN0ZXBPdmVyQnl0ZWNv
ZGVJbmRleFVzZUluRXhjZXB0aW9uSGFuZGxlcihjb2RlQmxvY2ssIGluc3RydWN0aW9ucywgbV9n
cmFwaCwgYnl0ZWNvZGVJbmRleCwgdXNlKTsKLSAgICAgICAgICAgICAgICByZXN1bHQubV91c2Vz
QWZ0ZXJbcmVzdWx0LnRvSW5kZXgoYnl0ZWNvZGVJbmRleCldID0gb3V0OyAvLyBBZnRlclVzZSBw
b2ludC4KKyAgICAgICAgICAgICAgICByZXN1bHQtPm1fdXNlc0FmdGVyW3Jlc3VsdC0+dG9JbmRl
eChieXRlY29kZUluZGV4KV0gPSBvdXQ7IC8vIEFmdGVyVXNlIHBvaW50LgogICAgICAgICAgICAg
ICAgIHN0ZXBPdmVyQnl0ZWNvZGVJbmRleFVzZShjb2RlQmxvY2ssIGluc3RydWN0aW9ucywgbV9n
cmFwaCwgYnl0ZWNvZGVJbmRleCwgdXNlKTsKLSAgICAgICAgICAgICAgICByZXN1bHQubV91c2Vz
QmVmb3JlW3Jlc3VsdC50b0luZGV4KGJ5dGVjb2RlSW5kZXgpXSA9IG91dDsgLy8gQmVmb3JlVXNl
IHBvaW50LgorICAgICAgICAgICAgICAgIHJlc3VsdC0+bV91c2VzQmVmb3JlW3Jlc3VsdC0+dG9J
bmRleChieXRlY29kZUluZGV4KV0gPSBvdXQ7IC8vIEJlZm9yZVVzZSBwb2ludC4KICAgICAgICAg
ICAgIH0KICAgICAgICAgfQogICAgIH0KKworICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIHZvaWQg
Qnl0ZWNvZGVMaXZlbmVzc0FuYWx5c2lzOjpkdW1wUmVzdWx0cyhDb2RlQmxvY2sqIGNvZGVCbG9j
aykKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9CeXRlY29kZUxp
dmVuZXNzQW5hbHlzaXMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9CeXRlY29k
ZUxpdmVuZXNzQW5hbHlzaXMuaAppbmRleCBhMjA0MTdmMjJjYjFiMmQzNzc2YjA5YTY3NzEzOWMy
MjdkMjYwYzI4Li5lNTA5NDc1YTk5YjFlZGU5NGFhOTIyOGE5NTU3ODYzYTdmYWE1MjJkIDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvQnl0ZWNvZGVMaXZlbmVzc0Fu
YWx5c2lzLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0J5dGVjb2RlTGl2
ZW5lc3NBbmFseXNpcy5oCkBAIC04NSw3ICs4NSw3IEBAIGNsYXNzIEJ5dGVjb2RlTGl2ZW5lc3NB
bmFseXNpcyA6IHByaXZhdGUgQnl0ZWNvZGVMaXZlbmVzc1Byb3BhZ2F0aW9uIHsKICAgICAKICAg
ICBGYXN0Qml0VmVjdG9yIGdldExpdmVuZXNzSW5mb0F0SW5zdHJ1Y3Rpb24oQ29kZUJsb2NrKiBj
b2RlQmxvY2ssIEJ5dGVjb2RlSW5kZXggYnl0ZWNvZGVJbmRleCkgeyByZXR1cm4gQnl0ZWNvZGVM
aXZlbmVzc1Byb3BhZ2F0aW9uOjpnZXRMaXZlbmVzc0luZm9BdEluc3RydWN0aW9uKGNvZGVCbG9j
aywgY29kZUJsb2NrLT5pbnN0cnVjdGlvbnMoKSwgbV9ncmFwaCwgYnl0ZWNvZGVJbmRleCk7IH0K
ICAgICAKLSAgICB2b2lkIGNvbXB1dGVGdWxsTGl2ZW5lc3MoQ29kZUJsb2NrKiwgRnVsbEJ5dGVj
b2RlTGl2ZW5lc3MmIHJlc3VsdCk7CisgICAgc3RkOjp1bmlxdWVfcHRyPEZ1bGxCeXRlY29kZUxp
dmVuZXNzPiBjb21wdXRlRnVsbExpdmVuZXNzKENvZGVCbG9jayopOwogCiAgICAgQnl0ZWNvZGVH
cmFwaCYgZ3JhcGgoKSB7IHJldHVybiBtX2dyYXBoOyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ieXRlY29kZS9GdWxsQnl0ZWNvZGVMaXZlbmVzcy5oIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2J5dGVjb2RlL0Z1bGxCeXRlY29kZUxpdmVuZXNzLmgKaW5kZXggNzk4NjJi
OGE2NzAxODcxYzliM2RiMzYzMGY4NjZlZGQzYTlkMDZlNC4uMGY0MTFhNjg5NTFhYzc1YTRkNDgx
Y2Q1NTI3MGNhYmY3YWYzMmU3NSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5
dGVjb2RlL0Z1bGxCeXRlY29kZUxpdmVuZXNzLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb2RlL0Z1bGxCeXRlY29kZUxpdmVuZXNzLmgKQEAgLTI4LDYgKzI4LDcgQEAKICNpbmNs
dWRlICJCeXRlY29kZUxpdmVuZXNzQW5hbHlzaXMuaCIKICNpbmNsdWRlICJPcGVyYW5kcy5oIgog
I2luY2x1ZGUgPHd0Zi9GYXN0Qml0VmVjdG9yLmg+CisjaW5jbHVkZSA8d3RmL0ZpeGVkVmVjdG9y
Lmg+CiAKIG5hbWVzcGFjZSBKU0MgewogCkBAIC0zOSw2ICs0MCwxMSBAQCBjbGFzcyBDb2RlQmxv
Y2s7CiBjbGFzcyBGdWxsQnl0ZWNvZGVMaXZlbmVzcyB7CiAgICAgV1RGX01BS0VfRkFTVF9BTExP
Q0FURUQ7CiBwdWJsaWM6CisgICAgZXhwbGljaXQgRnVsbEJ5dGVjb2RlTGl2ZW5lc3Moc2l6ZV90
IHNpemUpCisgICAgICAgIDogbV91c2VzQmVmb3JlKHNpemUpCisgICAgICAgICwgbV91c2VzQWZ0
ZXIoc2l6ZSkKKyAgICB7IH0KKwogICAgIGNvbnN0IEZhc3RCaXRWZWN0b3ImIGdldExpdmVuZXNz
KEJ5dGVjb2RlSW5kZXggYnl0ZWNvZGVJbmRleCwgTGl2ZW5lc3NDYWxjdWxhdGlvblBvaW50IHBv
aW50KSBjb25zdAogICAgIHsKICAgICAgICAgLy8gV2UgZG9uJ3QgaGF2ZSB0byB3b3JyeSBhYm91
dCBvdmVyZmxvd2luZyBpbnRvIHRoZSBuZXh0IGJ5dGVjb2Rlb2Zmc2V0IGluIG91ciB2ZWN0b3Jz
IGJlY2F1c2Ugd2UKQEAgLTY0LDggKzcwLDggQEAgY2xhc3MgRnVsbEJ5dGVjb2RlTGl2ZW5lc3Mg
ewogCiAgICAgLy8gRklYTUU6IFVzZSBGYXN0Qml0VmVjdG9yJ3MgdmlldyBtZWNoYW5pc20gdG8g
bWFrZSB0aGVtIGNvbXBhY3QuCiAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIwNDQyNwotICAgIFZlY3RvcjxGYXN0Qml0VmVjdG9yLCAwLCBVbnNhZmVWZWN0
b3JPdmVyZmxvdz4gbV91c2VzQmVmb3JlOwotICAgIFZlY3RvcjxGYXN0Qml0VmVjdG9yLCAwLCBV
bnNhZmVWZWN0b3JPdmVyZmxvdz4gbV91c2VzQWZ0ZXI7CisgICAgRml4ZWRWZWN0b3I8RmFzdEJp
dFZlY3Rvcj4gbV91c2VzQmVmb3JlOworICAgIEZpeGVkVmVjdG9yPEZhc3RCaXRWZWN0b3I+IG1f
dXNlc0FmdGVyOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRFdmFsQ29kZUJsb2NrLmggYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRFdmFsQ29kZUJsb2NrLmgKaW5kZXggMTQ3
MmNlYTJkZGJmZTYyMWZlNGYzYmI1NmE2NzFlNTljMDU3MDE3Ny4uMzUzYzVmOTk0NzEwZjJhZmJk
Mzc1MDY0YzkzZTdmMTNlYzg1MGFhZiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb2RlL1VubGlua2VkRXZhbENvZGVCbG9jay5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ieXRlY29kZS9VbmxpbmtlZEV2YWxDb2RlQmxvY2suaApAQCAtMjYsNiArMjYsNyBAQAog
I3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJVbmxpbmtlZEdsb2JhbENvZGVCbG9jay5oIgorI2lu
Y2x1ZGUgPHd0Zi9GaXhlZFZlY3Rvci5oPgogCiBuYW1lc3BhY2UgSlNDIHsKIApAQCAtNTMsMTAg
KzU0LDEwIEBAIGNsYXNzIFVubGlua2VkRXZhbENvZGVCbG9jayBmaW5hbCA6IHB1YmxpYyBVbmxp
bmtlZEdsb2JhbENvZGVCbG9jayB7CiAKICAgICBjb25zdCBJZGVudGlmaWVyJiB2YXJpYWJsZSh1
bnNpZ25lZCBpbmRleCkgeyByZXR1cm4gbV92YXJpYWJsZXNbaW5kZXhdOyB9CiAgICAgdW5zaWdu
ZWQgbnVtVmFyaWFibGVzKCkgeyByZXR1cm4gbV92YXJpYWJsZXMuc2l6ZSgpOyB9Ci0gICAgdm9p
ZCBhZG9wdFZhcmlhYmxlcyhWZWN0b3I8SWRlbnRpZmllciwgMCwgVW5zYWZlVmVjdG9yT3ZlcmZs
b3c+JiB2YXJpYWJsZXMpCisgICAgdm9pZCBhZG9wdFZhcmlhYmxlcyhWZWN0b3I8SWRlbnRpZmll
ciwgMCwgVW5zYWZlVmVjdG9yT3ZlcmZsb3c+JiYgdmFyaWFibGVzKQogICAgIHsKICAgICAgICAg
QVNTRVJUKG1fdmFyaWFibGVzLmlzRW1wdHkoKSk7Ci0gICAgICAgIG1fdmFyaWFibGVzLnN3YXAo
dmFyaWFibGVzKTsKKyAgICAgICAgbV92YXJpYWJsZXMgPSBGaXhlZFZlY3RvcjxJZGVudGlmaWVy
PihXVEZNb3ZlKHZhcmlhYmxlcykpOwogICAgIH0KIAogICAgIGNvbnN0IElkZW50aWZpZXImIGZ1
bmN0aW9uSG9pc3RpbmdDYW5kaWRhdGUodW5zaWduZWQgaW5kZXgpIHsgcmV0dXJuIG1fZnVuY3Rp
b25Ib2lzdGluZ0NhbmRpZGF0ZXNbaW5kZXhdOyB9CkBAIC02NCw3ICs2NSw3IEBAIGNsYXNzIFVu
bGlua2VkRXZhbENvZGVCbG9jayBmaW5hbCA6IHB1YmxpYyBVbmxpbmtlZEdsb2JhbENvZGVCbG9j
ayB7CiAgICAgdm9pZCBhZG9wdEZ1bmN0aW9uSG9pc3RpbmdDYW5kaWRhdGVzKFZlY3RvcjxJZGVu
dGlmaWVyLCAwLCBVbnNhZmVWZWN0b3JPdmVyZmxvdz4mJiBmdW5jdGlvbkhvaXN0aW5nQ2FuZGlk
YXRlcykKICAgICB7CiAgICAgICAgIEFTU0VSVChtX2Z1bmN0aW9uSG9pc3RpbmdDYW5kaWRhdGVz
LmlzRW1wdHkoKSk7Ci0gICAgICAgIG1fZnVuY3Rpb25Ib2lzdGluZ0NhbmRpZGF0ZXMgPSBXVEZN
b3ZlKGZ1bmN0aW9uSG9pc3RpbmdDYW5kaWRhdGVzKTsKKyAgICAgICAgbV9mdW5jdGlvbkhvaXN0
aW5nQ2FuZGlkYXRlcyA9IEZpeGVkVmVjdG9yPElkZW50aWZpZXI+KFdURk1vdmUoZnVuY3Rpb25I
b2lzdGluZ0NhbmRpZGF0ZXMpKTsKICAgICB9CiBwcml2YXRlOgogICAgIGZyaWVuZCBDYWNoZWRF
dmFsQ29kZUJsb2NrOwpAQCAtNzYsOCArNzcsOCBAQCBjbGFzcyBVbmxpbmtlZEV2YWxDb2RlQmxv
Y2sgZmluYWwgOiBwdWJsaWMgVW5saW5rZWRHbG9iYWxDb2RlQmxvY2sgewogCiAgICAgVW5saW5r
ZWRFdmFsQ29kZUJsb2NrKERlY29kZXImLCBjb25zdCBDYWNoZWRFdmFsQ29kZUJsb2NrJik7CiAK
LSAgICBWZWN0b3I8SWRlbnRpZmllciwgMCwgVW5zYWZlVmVjdG9yT3ZlcmZsb3c+IG1fdmFyaWFi
bGVzOwotICAgIFZlY3RvcjxJZGVudGlmaWVyLCAwLCBVbnNhZmVWZWN0b3JPdmVyZmxvdz4gbV9m
dW5jdGlvbkhvaXN0aW5nQ2FuZGlkYXRlczsKKyAgICBGaXhlZFZlY3RvcjxJZGVudGlmaWVyPiBt
X3ZhcmlhYmxlczsKKyAgICBGaXhlZFZlY3RvcjxJZGVudGlmaWVyPiBtX2Z1bmN0aW9uSG9pc3Rp
bmdDYW5kaWRhdGVzOwogCiBwdWJsaWM6CiAgICAgc3RhdGljIFN0cnVjdHVyZSogY3JlYXRlU3Ry
dWN0dXJlKFZNJiB2bSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBwcm90
bykKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvQnl0ZWNv
ZGVHZW5lcmF0b3IuY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9CeXRl
Y29kZUdlbmVyYXRvci5jcHAKaW5kZXggMzVkNGNkYWZjZjE2YzBiMmIwZTFjNWY1OTBiNTdhNDY2
N2JhOTE2ZC4uNTUzZmQwZTMxZDNlODU3YjkxYmE0ODYzNTY0ODVmZDUxMzBmNzRiNSAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9CeXRlY29kZUdlbmVyYXRv
ci5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9CeXRlY29kZUdl
bmVyYXRvci5jcHAKQEAgLTg4OSw3ICs4ODksNyBAQCBCeXRlY29kZUdlbmVyYXRvcjo6Qnl0ZWNv
ZGVHZW5lcmF0b3IoVk0mIHZtLCBFdmFsTm9kZSogZXZhbE5vZGUsIFVubGlua2VkRXZhbENvZAog
ICAgICAgICBlbHNlCiAgICAgICAgICAgICB2YXJpYWJsZXMuYXBwZW5kKElkZW50aWZpZXI6OmZy
b21VaWQobV92bSwgZW50cnkua2V5LmdldCgpKSk7CiAgICAgfQotICAgIGNvZGVCbG9jay0+YWRv
cHRWYXJpYWJsZXModmFyaWFibGVzKTsKKyAgICBjb2RlQmxvY2stPmFkb3B0VmFyaWFibGVzKFdU
Rk1vdmUodmFyaWFibGVzKSk7CiAgICAgY29kZUJsb2NrLT5hZG9wdEZ1bmN0aW9uSG9pc3RpbmdD
YW5kaWRhdGVzKFdURk1vdmUoaG9pc3RlZEZ1bmN0aW9ucykpOwogICAgIAogICAgIGlmIChldmFs
Tm9kZS0+bmVlZHNOZXdUYXJnZXRSZWdpc3RlckZvclRoaXNTY29wZSgpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdHcmFwaC5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvZGZnL0RGR0dyYXBoLmNwcAppbmRleCAzZTM0MTNhMGQyM2JkMTk1YzRjMGQyZjFlYjE1
ZmViMmRkNzRiZGYyLi4wNGIzYWIyOTU5MmM0NzQ5MzgzMGI1MTk5N2U2MWQ1YTA4NWU2NWFjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0dyYXBoLmNwcAorKysgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0dyYXBoLmNwcApAQCAtMTExNCw4ICsxMTE0LDcg
QEAgRnVsbEJ5dGVjb2RlTGl2ZW5lc3MmIEdyYXBoOjpsaXZlbmVzc0ZvcihDb2RlQmxvY2sqIGNv
ZGVCbG9jaykKICAgICBpZiAoaXRlciAhPSBtX2J5dGVjb2RlTGl2ZW5lc3MuZW5kKCkpCiAgICAg
ICAgIHJldHVybiAqaXRlci0+dmFsdWU7CiAgICAgCi0gICAgc3RkOjp1bmlxdWVfcHRyPEZ1bGxC
eXRlY29kZUxpdmVuZXNzPiBsaXZlbmVzcyA9IG1ha2VVbmlxdWU8RnVsbEJ5dGVjb2RlTGl2ZW5l
c3M+KCk7Ci0gICAgY29kZUJsb2NrLT5saXZlbmVzc0FuYWx5c2lzKCkuY29tcHV0ZUZ1bGxMaXZl
bmVzcyhjb2RlQmxvY2ssICpsaXZlbmVzcyk7CisgICAgc3RkOjp1bmlxdWVfcHRyPEZ1bGxCeXRl
Y29kZUxpdmVuZXNzPiBsaXZlbmVzcyA9IGNvZGVCbG9jay0+bGl2ZW5lc3NBbmFseXNpcygpLmNv
bXB1dGVGdWxsTGl2ZW5lc3MoY29kZUJsb2NrKTsKICAgICBGdWxsQnl0ZWNvZGVMaXZlbmVzcyYg
cmVzdWx0ID0gKmxpdmVuZXNzOwogICAgIG1fYnl0ZWNvZGVMaXZlbmVzcy5hZGQoY29kZUJsb2Nr
LCBXVEZNb3ZlKGxpdmVuZXNzKSk7CiAgICAgcmV0dXJuIHJlc3VsdDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMRm9yT1NSRW50cnlKSVRDb2RlLmggYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZnRsL0ZUTEZvck9TUkVudHJ5SklUQ29kZS5oCmluZGV4IDg4MmY0NjM5
YWZjMGU3ZDc2ZTg2ZDRmOGViNDg5ZDViZmQ0NWJmNWMuLjA3MDUzYTI3OTZlM2E1ZjNiMzk4YTcx
ODI1OTkwMWNkNmM3MjYxZWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwv
RlRMRm9yT1NSRW50cnlKSVRDb2RlLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9G
VExGb3JPU1JFbnRyeUpJVENvZGUuaApAQCAtMjgsNiArMjgsNyBAQAogI2lmIEVOQUJMRShGVExf
SklUKQogCiAjaW5jbHVkZSAiRlRMSklUQ29kZS5oIgorI2luY2x1ZGUgPHd0Zi9GaXhlZFZlY3Rv
ci5oPgogCiBuYW1lc3BhY2UgSlNDIHsgbmFtZXNwYWNlIEZUTCB7CiAKQEAgLTU1LDEwICs1Niwx
NSBAQCBjbGFzcyBGb3JPU1JFbnRyeUpJVENvZGUgZmluYWwgOiBwdWJsaWMgRlRMOjpKSVRDb2Rl
IHsKICAgICB1bnNpZ25lZCBlbnRyeUZhaWx1cmVDb3VudCgpIGNvbnN0IHsgcmV0dXJuIG1fZW50
cnlGYWlsdXJlQ291bnQ7IH0KICAgICAKICAgICBGb3JPU1JFbnRyeUpJVENvZGUqIGZ0bEZvck9T
UkVudHJ5KCkgZmluYWw7Ci0gICAgVmVjdG9yPERGRzo6Rmx1c2hGb3JtYXQ+JiBhcmd1bWVudEZs
dXNoRm9ybWF0cygpIHsgcmV0dXJuIG1fYXJndW1lbnRGbHVzaEZvcm1hdHM7IH0KKworICAgIHZv
aWQgc2V0QXJndW1lbnRGbHVzaEZvcm1hdHMoRml4ZWRWZWN0b3I8REZHOjpGbHVzaEZvcm1hdD4m
JiBhcmd1bWVudEZsdXNoRm9ybWF0cykKKyAgICB7CisgICAgICAgIG1fYXJndW1lbnRGbHVzaEZv
cm1hdHMgPSBXVEZNb3ZlKGFyZ3VtZW50Rmx1c2hGb3JtYXRzKTsKKyAgICB9CisgICAgY29uc3Qg
Rml4ZWRWZWN0b3I8REZHOjpGbHVzaEZvcm1hdD4mIGFyZ3VtZW50Rmx1c2hGb3JtYXRzKCkgeyBy
ZXR1cm4gbV9hcmd1bWVudEZsdXNoRm9ybWF0czsgfQogCiBwcml2YXRlOgotICAgIFZlY3RvcjxE
Rkc6OkZsdXNoRm9ybWF0PiBtX2FyZ3VtZW50Rmx1c2hGb3JtYXRzOworICAgIEZpeGVkVmVjdG9y
PERGRzo6Rmx1c2hGb3JtYXQ+IG1fYXJndW1lbnRGbHVzaEZvcm1hdHM7CiAgICAgU2NyYXRjaEJ1
ZmZlciogbV9lbnRyeUJ1ZmZlcjsgLy8gT25seSBmb3IgT1NSIGVudHJ5IGNvZGUgYmxvY2tzLgog
ICAgIEJ5dGVjb2RlSW5kZXggbV9ieXRlY29kZUluZGV4OwogICAgIHVuc2lnbmVkIG1fZW50cnlG
YWlsdXJlQ291bnQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTExv
d2VyREZHVG9CMy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTExvd2VyREZHVG9C
My5jcHAKaW5kZXggYWU1NzhhMzIxYjhiNzUyM2NkNWY0YjI1MzQyODA4NzllZTVlZjAxZi4uZGQ2
MjE2NTQwYWVkYWQxYTZkYzFjNDM1Y2ZkNGRlOTk0MmNlZTEyOCAxMDA2NDQKLS0tIGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1RvQjMuY3BwCisrKyBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9mdGwvRlRMTG93ZXJERkdUb0IzLmNwcApAQCAtMzYxLDkgKzM2MSwxMCBAQCBj
bGFzcyBMb3dlckRGR1RvQjMgewogCiAgICAgICAgICAgICBpZiAobV9ncmFwaC5tX3BsYW4ubW9k
ZSgpID09IEZUTEZvck9TUkVudHJ5TW9kZSkgewogICAgICAgICAgICAgICAgIGF1dG8qIGppdENv
ZGUgPSBtX2Z0bFN0YXRlLmppdENvZGUtPmZ0bEZvck9TUkVudHJ5KCk7Ci0gICAgICAgICAgICAg
ICAgaml0Q29kZS0+YXJndW1lbnRGbHVzaEZvcm1hdHMoKS5yZXNlcnZlSW5pdGlhbENhcGFjaXR5
KGNvZGVCbG9jaygpLT5udW1QYXJhbWV0ZXJzKCkpOworICAgICAgICAgICAgICAgIEZpeGVkVmVj
dG9yPERGRzo6Rmx1c2hGb3JtYXQ+IGFyZ3VtZW50Rmx1c2hGb3JtYXRzKGNvZGVCbG9jaygpLT5u
dW1QYXJhbWV0ZXJzKCkpOwogICAgICAgICAgICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgY29k
ZUJsb2NrKCktPm51bVBhcmFtZXRlcnMoKTsgKytpKQotICAgICAgICAgICAgICAgICAgICBqaXRD
b2RlLT5hcmd1bWVudEZsdXNoRm9ybWF0cygpLnVuY2hlY2tlZEFwcGVuZChtX2dyYXBoLm1fYXJn
dW1lbnRGb3JtYXRzWzBdW2ldKTsKKyAgICAgICAgICAgICAgICAgICAgYXJndW1lbnRGbHVzaEZv
cm1hdHNbaV0gPSBtX2dyYXBoLm1fYXJndW1lbnRGb3JtYXRzWzBdW2ldOworICAgICAgICAgICAg
ICAgIGppdENvZGUtPnNldEFyZ3VtZW50Rmx1c2hGb3JtYXRzKFdURk1vdmUoYXJndW1lbnRGbHVz
aEZvcm1hdHMpKTsKICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgZm9yICh1
bnNpZ25lZCBpID0gY29kZUJsb2NrKCktPm51bVBhcmFtZXRlcnMoKTsgaS0tOykgewogICAgICAg
ICAgICAgICAgICAgICBNZXRob2RPZkdldHRpbmdBVmFsdWVQcm9maWxlIHByb2ZpbGUoJm1fZ3Jh
cGgubV9wcm9maWxlZEJsb2NrLT52YWx1ZVByb2ZpbGVGb3JBcmd1bWVudChpKSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTE9TUkV4aXQuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL2Z0bC9GVExPU1JFeGl0LmNwcAppbmRleCAyNGJmYmQzNmNlZjUwMjI2ZDM3
N2I3YWU2NjZkNzM1MzhkODJhZWU5Li4zMzk5M2QyMjg2NDhhODFiOTA5Nzc4ZTc5NTcwNGQyYjg5
Y2Q3NmIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTE9TUkV4aXQu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMT1NSRXhpdC5jcHAKQEAgLTg2
LDkgKzg2LDkgQEAgUmVmPE9TUkV4aXRIYW5kbGU+IE9TUkV4aXREZXNjcmlwdG9yOjpwcmVwYXJl
T1NSRXhpdEhhbmRsZSgKICAgICBPU1JFeGl0JiBleGl0ID0gc3RhdGUuaml0Q29kZS0+b3NyRXhp
dC5hbGxvYygKICAgICAgICAgdGhpcywgZXhpdEtpbmQsIG5vZGVPcmlnaW4uZm9yRXhpdCwgbm9k
ZU9yaWdpbi5zZW1hbnRpYywgbm9kZU9yaWdpbi53YXNIb2lzdGVkLCBkZmdOb2RlSW5kZXgpOwog
ICAgIFJlZjxPU1JFeGl0SGFuZGxlPiBoYW5kbGUgPSBhZG9wdFJlZigqbmV3IE9TUkV4aXRIYW5k
bGUoaW5kZXgsIGV4aXQpKTsKLSAgICBmb3IgKHVuc2lnbmVkIGkgPSBvZmZzZXQ7IGkgPCBwYXJh
bXMuc2l6ZSgpOyArK2kpCi0gICAgICAgIGV4aXQubV92YWx1ZVJlcHMuYXBwZW5kKHBhcmFtc1tp
XSk7Ci0gICAgZXhpdC5tX3ZhbHVlUmVwcy5zaHJpbmtUb0ZpdCgpOworICAgIGV4aXQubV92YWx1
ZVJlcHMgPSBGaXhlZFZlY3RvcjxCMzo6VmFsdWVSZXA+KHBhcmFtcy5zaXplKCkgLSBvZmZzZXQp
OworICAgIGZvciAodW5zaWduZWQgaSA9IG9mZnNldCwgaW5kZXhJblZhbHVlUmVwcyA9IDA7IGkg
PCBwYXJhbXMuc2l6ZSgpOyArK2ksICsraW5kZXhJblZhbHVlUmVwcykKKyAgICAgICAgZXhpdC5t
X3ZhbHVlUmVwc1tpbmRleEluVmFsdWVSZXBzXSA9IHBhcmFtc1tpXTsKICAgICByZXR1cm4gaGFu
ZGxlOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTE9TUkV4
aXQuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMT1NSRXhpdC5oCmluZGV4IDRlMjUy
Mzc3MDMyNjA2ZTFiY2UyMzRiMjRlNTI2OThiZjYxZmZkYmUuLjkyY2E0ZmU5ZDMxZmZmNDE2OTA4
NGQ5OGZiOGJlZjRjMGFkNjlhN2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9m
dGwvRlRMT1NSRXhpdC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwvRlRMT1NSRXhp
dC5oCkBAIC00NCw2ICs0NCw3IEBACiAjaW5jbHVkZSAiUmVnLmgiCiAjaW5jbHVkZSAiVmFsdWVQ
cm9maWxlLmgiCiAjaW5jbHVkZSAiVmlydHVhbFJlZ2lzdGVyLmgiCisjaW5jbHVkZSA8d3RmL0Zp
eGVkVmVjdG9yLmg+CiAKIG5hbWVzcGFjZSBKU0MgewogCkBAIC0xMjUsNyArMTI2LDcgQEAgc3Ry
dWN0IE9TUkV4aXQgOiBwdWJsaWMgREZHOjpPU1JFeGl0QmFzZSB7CiAgICAgTWFjcm9Bc3NlbWJs
ZXJDb2RlUmVmPE9TUkV4aXRQdHJUYWc+IG1fY29kZTsKICAgICAvLyBUaGlzIHRlbGxzIHVzIHdo
ZXJlIHRvIHBsYWNlIGEganVtcC4KICAgICBDb2RlTG9jYXRpb25KdW1wPEpTSW50ZXJuYWxQdHJU
YWc+IG1fcGF0Y2hhYmxlSnVtcDsKLSAgICBWZWN0b3I8QjM6OlZhbHVlUmVwPiBtX3ZhbHVlUmVw
czsKKyAgICBGaXhlZFZlY3RvcjxCMzo6VmFsdWVSZXA+IG1fdmFsdWVSZXBzOwogCiAgICAgQ29k
ZUxvY2F0aW9uSnVtcDxKU0ludGVybmFsUHRyVGFnPiBjb2RlTG9jYXRpb25Gb3JSZXBhdGNoKENv
ZGVCbG9jayogZnRsQ29kZUJsb2NrKSBjb25zdDsKICAgICB2b2lkIGNvbnNpZGVyQWRkaW5nQXNG
cmVxdWVudEV4aXRTaXRlKENvZGVCbG9jayogcHJvZmlsZWRDb2RlQmxvY2spCmRpZmYgLS1naXQg
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTE9TUkV4aXRDb21waWxlci5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTE9TUkV4aXRDb21waWxlci5jcHAKaW5kZXggZjBhZTIw
MzQ5YjhiODU3MDFkZmZiNWZlYzNiZmFjODkxODkzZDI4Mi4uYTI4ZDk3NjA4NjAyNTc2ODQyNjRl
NGJlYTkyYTEyNDFjMTc4ZTZkZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Z0
bC9GVExPU1JFeGl0Q29tcGlsZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9mdGwv
RlRMT1NSRXhpdENvbXBpbGVyLmNwcApAQCAtMTAyLDcgKzEwMiw3IEBAIHN0YXRpYyB2b2lkIHJl
Ym94QWNjb3JkaW5nVG9Gb3JtYXQoCiAKIHN0YXRpYyB2b2lkIGNvbXBpbGVSZWNvdmVyeSgKICAg
ICBDQ2FsbEhlbHBlcnMmIGppdCwgY29uc3QgRXhpdFZhbHVlJiB2YWx1ZSwKLSAgICBWZWN0b3I8
QjM6OlZhbHVlUmVwPiYgdmFsdWVSZXBzLAorICAgIGNvbnN0IEZpeGVkVmVjdG9yPEIzOjpWYWx1
ZVJlcD4mIHZhbHVlUmVwcywKICAgICBjaGFyKiByZWdpc3RlclNjcmF0Y2gsCiAgICAgY29uc3Qg
SGFzaE1hcDxFeGl0VGltZU9iamVjdE1hdGVyaWFsaXphdGlvbiosIEVuY29kZWRKU1ZhbHVlKj4m
IG1hdGVyaWFsaXphdGlvblRvUG9pbnRlcikKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9oZWFwL01hcmtlZFNwYWNlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFw
L01hcmtlZFNwYWNlLmNwcAppbmRleCA0MDJhYjFiZjFlNWFkMTcwNDA3YTBkZDdiMDNiOTczMmE0
Y2JlMWFjLi4yN2NlMmVmNTUyNmJlZDY4YWMwOGE3NjM0YTk5NjNhMzEwYjg2MDBlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRTcGFjZS5jcHAKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvTWFya2VkU3BhY2UuY3BwCkBAIC0yNDYsNyArMjQ2LDcg
QEAgdm9pZCBNYXJrZWRTcGFjZTo6c3dlZXBQcmVjaXNlQWxsb2NhdGlvbnMoKQogICAgICAgICBh
bGxvY2F0aW9uLT5zZXRJbmRleEluU3BhY2UoZHN0SW5kZXgpOwogICAgICAgICBtX3ByZWNpc2VB
bGxvY2F0aW9uc1tkc3RJbmRleCsrXSA9IGFsbG9jYXRpb247CiAgICAgfQotICAgIG1fcHJlY2lz
ZUFsbG9jYXRpb25zLnNocmluayhkc3RJbmRleCk7CisgICAgbV9wcmVjaXNlQWxsb2NhdGlvbnMu
c2hyaW5rQ2FwYWNpdHkoZHN0SW5kZXgpOwogICAgIG1fcHJlY2lzZUFsbG9jYXRpb25zTnVyc2Vy
eU9mZnNldCA9IG1fcHJlY2lzZUFsbG9jYXRpb25zLnNpemUoKTsKIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9SZWdpc3RlckF0T2Zmc2V0TGlzdC5jcHAgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaml0L1JlZ2lzdGVyQXRPZmZzZXRMaXN0LmNwcAppbmRleCA3Yjcz
YjY0Y2VhNzlmYzIzZjAyOTFjYmI0MWRlNmQ2NDAwOWIyZTcyLi44YjM5MTI2YzViNTQyYTIzMmNk
ZjFjMDBmYWYyYWMwYmQ2YmI1MTZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aml0L1JlZ2lzdGVyQXRPZmZzZXRMaXN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
aml0L1JlZ2lzdGVyQXRPZmZzZXRMaXN0LmNwcApAQCAtMzcsNiArMzcsNyBAQCBERUZJTkVfQUxM
T0NBVE9SX1dJVEhfSEVBUF9JREVOVElGSUVSKFJlZ2lzdGVyQXRPZmZzZXRMaXN0KTsKIFJlZ2lz
dGVyQXRPZmZzZXRMaXN0OjpSZWdpc3RlckF0T2Zmc2V0TGlzdCgpIHsgfQogCiBSZWdpc3RlckF0
T2Zmc2V0TGlzdDo6UmVnaXN0ZXJBdE9mZnNldExpc3QoUmVnaXN0ZXJTZXQgcmVnaXN0ZXJTZXQs
IE9mZnNldEJhc2VUeXBlIG9mZnNldEJhc2VUeXBlKQorICAgIDogbV9yZWdpc3RlcnMocmVnaXN0
ZXJTZXQubnVtYmVyT2ZTZXRSZWdpc3RlcnMoKSkKIHsKICAgICBzaXplX3QgbnVtYmVyT2ZSZWdp
c3RlcnMgPSByZWdpc3RlclNldC5udW1iZXJPZlNldFJlZ2lzdGVycygpOwogICAgIHB0cmRpZmZf
dCBvZmZzZXQgPSAwOwpAQCAtNDQsMTAgKzQ1LDExIEBAIFJlZ2lzdGVyQXRPZmZzZXRMaXN0OjpS
ZWdpc3RlckF0T2Zmc2V0TGlzdChSZWdpc3RlclNldCByZWdpc3RlclNldCwgT2Zmc2V0QmFzZVR5
CiAgICAgaWYgKG9mZnNldEJhc2VUeXBlID09IEZyYW1lUG9pbnRlckJhc2VkKQogICAgICAgICBv
ZmZzZXQgPSAtKHN0YXRpY19jYXN0PHB0cmRpZmZfdD4obnVtYmVyT2ZSZWdpc3RlcnMpICogc2l6
ZW9mKENQVVJlZ2lzdGVyKSk7CiAKLSAgICBtX3JlZ2lzdGVycy5yZXNlcnZlSW5pdGlhbENhcGFj
aXR5KG51bWJlck9mUmVnaXN0ZXJzKTsKKyAgICB1bnNpZ25lZCBpbmRleCA9IDA7CiAgICAgcmVn
aXN0ZXJTZXQuZm9yRWFjaChbJl0gKFJlZyByZWcpIHsKLSAgICAgICAgbV9yZWdpc3RlcnMuYXBw
ZW5kKFJlZ2lzdGVyQXRPZmZzZXQocmVnLCBvZmZzZXQpKTsKKyAgICAgICAgbV9yZWdpc3RlcnNb
aW5kZXhdID0gUmVnaXN0ZXJBdE9mZnNldChyZWcsIG9mZnNldCk7CiAgICAgICAgIG9mZnNldCAr
PSBzaXplb2YoQ1BVUmVnaXN0ZXIpOworICAgICAgICArK2luZGV4OwogICAgIH0pOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L1JlZ2lzdGVyQXRPZmZzZXRMaXN0
LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L1JlZ2lzdGVyQXRPZmZzZXRMaXN0LmgKaW5k
ZXggMWJmODk2ODdlOWZiZmI3YjhmNjIwZjNlMGQ1YTM4Y2IwZWIzNjAzOS4uYTk5MDE3YzRhZWJm
ZTI5YWNkYzI2MWI5MmE2MzQ4NDEzMjc2NGMzZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ppdC9SZWdpc3RlckF0T2Zmc2V0TGlzdC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9qaXQvUmVnaXN0ZXJBdE9mZnNldExpc3QuaApAQCAtMjksNiArMjksNyBAQAogCiAjaW5j
bHVkZSAiUmVnaXN0ZXJBdE9mZnNldC5oIgogI2luY2x1ZGUgIlJlZ2lzdGVyU2V0LmgiCisjaW5j
bHVkZSA8d3RmL0ZpeGVkVmVjdG9yLmg+CiAKIG5hbWVzcGFjZSBKU0MgewogCkBAIC00MywxMSAr
NDQsNiBAQCBjbGFzcyBSZWdpc3RlckF0T2Zmc2V0TGlzdCB7CiAKICAgICB2b2lkIGR1bXAoUHJp
bnRTdHJlYW0mKSBjb25zdDsKIAotICAgIHZvaWQgY2xlYXIoKQotICAgIHsKLSAgICAgICAgbV9y
ZWdpc3RlcnMuY2xlYXIoKTsKLSAgICB9Ci0KICAgICBzaXplX3Qgc2l6ZSgpIGNvbnN0CiAgICAg
ewogICAgICAgICByZXR1cm4gbV9yZWdpc3RlcnMuc2l6ZSgpOwpAQCAtNjYsMTMgKzYyLDEzIEBA
IGNsYXNzIFJlZ2lzdGVyQXRPZmZzZXRMaXN0IHsKICAgICBSZWdpc3RlckF0T2Zmc2V0KiBmaW5k
KFJlZykgY29uc3Q7CiAgICAgdW5zaWduZWQgaW5kZXhPZihSZWcpIGNvbnN0OyAvLyBSZXR1cm5z
IFVJTlRfTUFYIGlmIG5vdCBmb3VuZC4KIAotICAgIFZlY3RvcjxSZWdpc3RlckF0T2Zmc2V0Pjo6
Y29uc3RfaXRlcmF0b3IgYmVnaW4oKSBjb25zdCB7IHJldHVybiBtX3JlZ2lzdGVycy5iZWdpbigp
OyB9Ci0gICAgVmVjdG9yPFJlZ2lzdGVyQXRPZmZzZXQ+Ojpjb25zdF9pdGVyYXRvciBlbmQoKSBj
b25zdCB7IHJldHVybiBtX3JlZ2lzdGVycy5lbmQoKTsgfQorICAgIEZpeGVkVmVjdG9yPFJlZ2lz
dGVyQXRPZmZzZXQ+Ojpjb25zdF9pdGVyYXRvciBiZWdpbigpIGNvbnN0IHsgcmV0dXJuIG1fcmVn
aXN0ZXJzLmJlZ2luKCk7IH0KKyAgICBGaXhlZFZlY3RvcjxSZWdpc3RlckF0T2Zmc2V0Pjo6Y29u
c3RfaXRlcmF0b3IgZW5kKCkgY29uc3QgeyByZXR1cm4gbV9yZWdpc3RlcnMuZW5kKCk7IH0KIAog
ICAgIHN0YXRpYyBjb25zdCBSZWdpc3RlckF0T2Zmc2V0TGlzdCYgbGxpbnRCYXNlbGluZUNhbGxl
ZVNhdmVSZWdpc3RlcnMoKTsgLy8gUmVnaXN0ZXJzIGFuZCBPZmZzZXRzIHNhdmVkIGFuZCB1c2Vk
IGJ5IHRoZSBMTEludC4KIAogcHJpdmF0ZToKLSAgICBWZWN0b3I8UmVnaXN0ZXJBdE9mZnNldD4g
bV9yZWdpc3RlcnM7CisgICAgRml4ZWRWZWN0b3I8UmVnaXN0ZXJBdE9mZnNldD4gbV9yZWdpc3Rl
cnM7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBKU0MKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9KU0dsb2JhbE9iamVjdC5oCmluZGV4IDdiZmI5ZWJmM2E1NWI5NTc1ZTdkY2E1ZmU2
NzlkMzM4MzZlNjM2MmEuLjNiZjRlZjY2MGFhNDA5ZDllYjkyN2I3MzE3OGU5NDAzZTE4YjkzMjcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNHbG9iYWxPYmplY3QuaApA
QCAtNDgsNiArNDgsNyBAQAogI2luY2x1ZGUgIldlYWtHQ1NldC5oIgogI2luY2x1ZGUgPEphdmFT
Y3JpcHRDb3JlL0pTQmFzZS5oPgogI2luY2x1ZGUgPGFycmF5PgorI2luY2x1ZGUgPHd0Zi9GaXhl
ZFZlY3Rvci5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAjaW5jbHVkZSA8d3RmL1JldGFp
blB0ci5oPgogCkBAIC00NTksNyArNDYwLDcgQEAgY2xhc3MgSlNHbG9iYWxPYmplY3QgOiBwdWJs
aWMgSlNTZWdtZW50ZWRWYXJpYWJsZU9iamVjdCB7CiAgICAgRk9SX0VBQ0hfVFlQRURfQVJSQVlf
VFlQRShERUNMQVJFX1RZUEVEX0FSUkFZX1RZUEVfU1RSVUNUVVJFKQogI3VuZGVmIERFQ0xBUkVf
VFlQRURfQVJSQVlfVFlQRV9TVFJVQ1RVUkUKIAotICAgIFZlY3RvcjxMYXp5UHJvcGVydHk8SlNH
bG9iYWxPYmplY3QsIEpTQ2VsbD4+IG1fbGlua1RpbWVDb25zdGFudHM7CisgICAgRml4ZWRWZWN0
b3I8TGF6eVByb3BlcnR5PEpTR2xvYmFsT2JqZWN0LCBKU0NlbGw+PiBtX2xpbmtUaW1lQ29uc3Rh
bnRzOwogCiAgICAgU3RyaW5nIG1fbmFtZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVOYW1lc3BhY2VPYmplY3QuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1bGVOYW1lc3BhY2VPYmplY3QuY3BwCmluZGV4IDc3YWMy
M2M1NzRmMWU0ZDY4N2NhODgyYmQwNGJiZWM4Y2EwNzBlYjguLmE3NDFjNTJiYTJmYTQyMzk3MjIy
YzNjYTE5YmEzYmRkN2QyZWIyNmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL0pTTW9kdWxlTmFtZXNwYWNlT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU01vZHVsZU5hbWVzcGFjZU9iamVjdC5jcHAKQEAgLTU4LDE0ICs1OCwx
NiBAQCB2b2lkIEpTTW9kdWxlTmFtZXNwYWNlT2JqZWN0OjpmaW5pc2hDcmVhdGlvbihKU0dsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0LCBBYnN0cgogICAgIH0pOwogCiAgICAgbV9tb2R1bGVSZWNv
cmQuc2V0KHZtLCB0aGlzLCBtb2R1bGVSZWNvcmQpOwotICAgIG1fbmFtZXMucmVzZXJ2ZUNhcGFj
aXR5KHJlc29sdXRpb25zLnNpemUoKSk7CisgICAgbV9uYW1lcyA9IEZpeGVkVmVjdG9yPElkZW50
aWZpZXI+KHJlc29sdXRpb25zLnNpemUoKSk7CiAgICAgewogICAgICAgICBhdXRvIGxvY2tlciA9
IGhvbGRMb2NrKGNlbGxMb2NrKCkpOworICAgICAgICB1bnNpZ25lZCBpbmRleCA9IDA7CiAgICAg
ICAgIGZvciAoY29uc3QgYXV0byYgcGFpciA6IHJlc29sdXRpb25zKSB7Ci0gICAgICAgICAgICBt
X25hbWVzLmFwcGVuZChwYWlyLmZpcnN0KTsKKyAgICAgICAgICAgIG1fbmFtZXNbaW5kZXhdID0g
cGFpci5maXJzdDsKICAgICAgICAgICAgIGF1dG8gYWRkUmVzdWx0ID0gbV9leHBvcnRzLmFkZChw
YWlyLmZpcnN0LmltcGwoKSwgRXhwb3J0RW50cnkoKSk7CiAgICAgICAgICAgICBhZGRSZXN1bHQu
aXRlcmF0b3ItPnZhbHVlLmxvY2FsTmFtZSA9IHBhaXIuc2Vjb25kLmxvY2FsTmFtZTsKICAgICAg
ICAgICAgIGFkZFJlc3VsdC5pdGVyYXRvci0+dmFsdWUubW9kdWxlUmVjb3JkLnNldCh2bSwgdGhp
cywgcGFpci5zZWNvbmQubW9kdWxlUmVjb3JkKTsKKyAgICAgICAgICAgICsraW5kZXg7CiAgICAg
ICAgIH0KICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0pTTW9kdWxlTmFtZXNwYWNlT2JqZWN0LmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU01vZHVsZU5hbWVzcGFjZU9iamVjdC5oCmluZGV4IGZmYjIzZGI0ZmNjMTAwY2QxMmZlOGEx
MDkyNWMxZjNmYjJmMWYzYmIuLmQ5M2Y5YTUzMDJmZDAzNGY2NWY3ZjI2YjgxY2M4MzE5NWY5YzBm
NWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTW9kdWxlTmFt
ZXNwYWNlT2JqZWN0LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNNb2R1
bGVOYW1lc3BhY2VPYmplY3QuaApAQCAtMjcsNiArMjcsNyBAQAogCiAjaW5jbHVkZSAiQWJzdHJh
Y3RNb2R1bGVSZWNvcmQuaCIKICNpbmNsdWRlICJKU0Rlc3RydWN0aWJsZU9iamVjdC5oIgorI2lu
Y2x1ZGUgPHd0Zi9GaXhlZFZlY3Rvci5oPgogCiBuYW1lc3BhY2UgSlNDIHsKIApAQCAtODQsNyAr
ODUsNyBAQCBjbGFzcyBKU01vZHVsZU5hbWVzcGFjZU9iamVjdCBmaW5hbCA6IHB1YmxpYyBKU05v
bkZpbmFsT2JqZWN0IHsKICAgICB0eXBlZGVmIEhhc2hNYXA8UmVmUHRyPFVuaXF1ZWRTdHJpbmdJ
bXBsPiwgRXhwb3J0RW50cnksIElkZW50aWZpZXJSZXBIYXNoLCBIYXNoVHJhaXRzPFJlZlB0cjxV
bmlxdWVkU3RyaW5nSW1wbD4+PiBFeHBvcnRNYXA7CiAKICAgICBFeHBvcnRNYXAgbV9leHBvcnRz
OwotICAgIFZlY3RvcjxJZGVudGlmaWVyPiBtX25hbWVzOworICAgIEZpeGVkVmVjdG9yPElkZW50
aWZpZXI+IG1fbmFtZXM7CiAgICAgV3JpdGVCYXJyaWVyPEFic3RyYWN0TW9kdWxlUmVjb3JkPiBt
X21vZHVsZVJlY29yZDsKIAogICAgIGZyaWVuZCBzaXplX3QgY2VsbFNpemUoVk0mLCBKU0NlbGwq
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95YXJyL1lhcnJQYXR0ZXJuLmgg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUveWFyci9ZYXJyUGF0dGVybi5oCmluZGV4IDAxZWI3OTdl
Y2Y5OTI5YzMxMjUyNjQ0NmM3MDkyMzU2M2UyYzBkNzcuLjE4Y2FlYTk4MjUxN2IzM2VlYjY4OTUx
OGZkYmU3MTQ2ZWFkYmI3ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS95YXJy
L1lhcnJQYXR0ZXJuLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3lhcnIvWWFyclBhdHRl
cm4uaApAQCAtNDEzLDcgKzQxMyw3IEBAIHN0cnVjdCBZYXJyUGF0dGVybiB7CiAKICAgICAgICAg
bV9kaXNqdW5jdGlvbnMuY2xlYXIoKTsKICAgICAgICAgbV91c2VyQ2hhcmFjdGVyQ2xhc3Nlcy5j
bGVhcigpOwotICAgICAgICBtX2NhcHR1cmVHcm91cE5hbWVzLnNocmluaygwKTsKKyAgICAgICAg
bV9jYXB0dXJlR3JvdXBOYW1lcy5jbGVhcigpOwogICAgIH0KIAogICAgIGJvb2wgY29udGFpbnNV
bnNpZ25lZExlbmd0aFBhdHRlcm4oKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>