<?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>222643</bug_id>
          
          <creation_ts>2021-03-03 01:01:55 -0800</creation_ts>
          <short_desc>Modernize WebKit2 PDFKit softlinking</short_desc>
          <delta_ts>2021-04-15 05:37:01 -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>224603</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tim Horton">thorton</reporter>
          <assigned_to name="Tim Horton">thorton</assigned_to>
          <cc>achristensen</cc>
    
    <cc>aestes</cc>
    
    <cc>beidson</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1735209</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-03-03 01:01:55 -0800</bug_when>
    <thetext>Modernize WebKit2 PDFKit softlinking</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1735210</commentid>
    <comment_count>1</comment_count>
      <attachid>422049</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-03-03 01:02:22 -0800</bug_when>
    <thetext>Created attachment 422049
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1735213</commentid>
    <comment_count>2</comment_count>
      <attachid>422051</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-03-03 01:08:08 -0800</bug_when>
    <thetext>Created attachment 422051
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1735465</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-03-03 13:04:52 -0800</bug_when>
    <thetext>Committed r273833: &lt;https://commits.webkit.org/r273833&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 422051.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1735467</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-03-03 13:05:17 -0800</bug_when>
    <thetext>&lt;rdar://problem/74999524&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422049</attachid>
            <date>2021-03-03 01:02:22 -0800</date>
            <delta_ts>2021-03-03 01:07:38 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-222643-20210303010221.patch</filename>
            <type>text/plain</type>
            <size>32404</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczNzc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDUyNTJhZWUxMzE4YjI1YTBmMDA3MWI5
NTJmNzFmZDlmY2JkMzAxNDIuLjFiY2U1Njg2MzY1ODgyN2FlODRmYTNkYTg0ZDg2ODUzYjgyZjhk
MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMjEtMDMtMDMgIFRpbSBIb3J0b24gIDx0aW1vdGh5
X2hvcnRvbkBhcHBsZS5jb20+CisKKyAgICAgICAgTW9kZXJuaXplIFdlYktpdDIgUERGS2l0IHNv
ZnRsaW5raW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMjI2NDMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIHd0Zi9QbGF0Zm9ybUhhdmUuaDoKKwogMjAyMS0wMy0wMiAgU2ltb24gRnJhc2VyICA8c2lt
b24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW5hbWUgRm9yY2VQYWdlUmVuZGVyaW5n
VXBkYXRlc0F0NjBGUFNFbmFibGVkIHByZWZlcmVuY2UgdG8gUHJlZmVyUGFnZVJlbmRlcmluZ1Vw
ZGF0ZXNOZWFyNjBGUFNFbmFibGVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDcwMDBjNDcyYzViYzE3N2FhNzlhYjA2
ZDE1MmUwZWM3MjMxZjlmMWQuLjZiMzRmNDFiOTRiMGNmMjRiYTFhMzhlMmZmNTEzMDI3MzU2Nzgz
YjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDUgQEAKKzIwMjEtMDMtMDMgIFRpbSBIb3J0b24gIDx0
aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CisKKyAgICAgICAgTW9kZXJuaXplIFdlYktpdDIgUERG
S2l0IHNvZnRsaW5raW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMjI2NDMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBXZWJLaXQyIGhhcyBsb25nIGhhZCBhbiB1bnVzdWFsIHdheSBvZiBzb2Z0bGlua2lu
ZyBQREZLaXQsIHVzaW5nIE5TQnVuZGxlLgorICAgICAgICBJdCBoYXMgY2F1c2VkIG11Y2ggdHJv
dWJsZSBpbiB0aGUgcGFzdCwgYmVjYXVzZSBpdCBtZWFucyB0aGF0IHJ1bm5pbmcKKyAgICAgICAg
V2ViS2l0IGFnYWluc3QgYSBjdXN0b20gUERGS2l0IHJlcXVpcmVzIGVpdGhlciBpbnN0YWxsaW5n
IGl0IGludG8KKyAgICAgICAgdGhlIHN5c3RlbSwgb3IgY2hhbmdpbmcgdGhlIGhhcmRjb2RlZCBw
YXRoLgorCisgICAgICAgIEluc3RlYWQgb2YgdGhpcywganVzdCB1c2UgdGhlIG5vcm1hbCBzb2Z0
bGlua2luZyBtYWNyb3MgdGhhdCB0aGUgcmVzdAorICAgICAgICBvZiBXZWJLaXQgdXNlcy4KKwor
ICAgICAgICAqIFNoYXJlZC9Db2NvYS9QREZLaXRTb2Z0TGluay5oOiBBZGRlZC4KKyAgICAgICAg
KiBTaGFyZWQvQ29jb2EvUERGS2l0U29mdExpbmsubW06IEFkZGVkLgorICAgICAgICAqIFNoYXJl
ZC9tYWMvUERGS2l0SW1wb3J0cy5oOiBSZW1vdmVkLgorICAgICAgICAqIFNoYXJlZC9tYWMvUERG
S2l0SW1wb3J0cy5tbTogUmVtb3ZlZC4KKyAgICAgICAgKiBTb3VyY2VzQ29jb2EudHh0OgorICAg
ICAgICAqIFVJUHJvY2Vzcy9tYWMvV0tQcmludGluZ1ZpZXcubW06CisgICAgICAgICgtW1dLUHJp
bnRpbmdWaWV3IF9kcmF3UERGRG9jdW1lbnQ6cGFnZTphdFBvaW50Ol0pOgorICAgICAgICAoLVtX
S1ByaW50aW5nVmlldyBkcmF3UmVjdDpdKToKKyAgICAgICAgKiBXZWJLaXQueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdp
bi5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9QREYvUERGUGx1Z2luLm1tOgorICAg
ICAgICAoV2ViS2l0OjpQREZQbHVnaW46OlBERlBsdWdpbik6CisgICAgICAgIChXZWJLaXQ6OlBE
RlBsdWdpbjo6cmVjZWl2ZWROb25MaW5lYXJpemVkUERGU2VudGluZWwpOgorICAgICAgICAoV2Vi
S2l0OjpQREZQbHVnaW46OnRocmVhZEVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6UERGUGx1Z2lu
Ojpkb2N1bWVudERhdGFEaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYktpdDo6UERGUGx1
Z2luOjpzZXRBY3RpdmVBbm5vdGF0aW9uKToKKyAgICAgICAgKFdlYktpdDo6UERGUGx1Z2luOjpu
ZXh0TWF0Y2hGb3JTdHJpbmcpOgorICAgICAgICAoV2ViS2l0OjogY29uc3QpOgorICAgICAgICAq
IFdlYlByb2Nlc3MvUGx1Z2lucy9QREYvUERGUGx1Z2luQW5ub3RhdGlvbi5tbToKKyAgICAgICAg
KFdlYktpdDo6UERGUGx1Z2luQW5ub3RhdGlvbjo6Y3JlYXRlKToKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpbkNob2ljZUFubm90YXRpb24ubW06CisgICAgICAgICog
V2ViUHJvY2Vzcy9QbHVnaW5zL1BERi9QREZQbHVnaW5QYXNzd29yZEZpZWxkLm1tOgorICAgICAg
ICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9QREYvUERGUGx1Z2luVGV4dEFubm90YXRpb24ubW06Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tOgorICAgICAgICAo
V2ViS2l0OjpXZWJQYWdlOjpzaG91bGRVc2VQREZQbHVnaW4gY29uc3QpOgorICAgICAgICAoV2Vi
S2l0OjpkcmF3UERGUGFnZSk6CisKIDIwMjEtMDMtMDIgIFBlbmcgTGl1ICA8cGVuZy5saXU2QGFw
cGxlLmNvbT4KIAogICAgICAgICBbIEJpZ1N1ciBEZWJ1ZyBXayAyIF0gQVNTRVJUIE5PVCBSRUFD
SEVEIGluIFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpQYWludEZyYW1lRm9yTWVkaWE6OmFwcGx5CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUhhdmUuaCBiL1NvdXJjZS9XVEYvd3Rm
L1BsYXRmb3JtSGF2ZS5oCmluZGV4IDY2NDRiNGI3ZWZlNzJhZTdmMDVkYjkyZjMxMDY3YTNjOWRh
ZDllYjkuLjRmZjIzZTE5OGVlMmU0Y2NjYjA5ZDk1NmFlOGJjMjVkM2MyNzg0ZTMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtSGF2ZS5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1Bs
YXRmb3JtSGF2ZS5oCkBAIC05MjAsMyArOTIwLDcgQEAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZ
KSAmJiAhUExBVEZPUk0oTUFDQ0FUQUxZU1QpCiAjZGVmaW5lIEhBVkVfTlNVUkxfVElUTEUgMQog
I2VuZGlmCisKKyNpZiBQTEFURk9STShDT0NPQSkKKyNkZWZpbmUgSEFWRV9QREZLSVQgMQorI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9QREZLaXRTb2Z0TGlu
ay5oIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvUERGS2l0U29mdExpbmsuaApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5lZDMxNTI3OGFlMGEzNDY1NmMzYjc1YmM4ZGQ0ZDg5NGQxODMwMDIyCi0tLSAvZGV2L251
bGwKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvUERGS2l0U29mdExpbmsuaApAQCAt
MCwwICsxLDQ1IEBACisvKgorKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorKgorKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisqIGFyZSBtZXQ6Cisq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorKgorKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElO
Qy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisqIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorKiBUSEUg
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCisqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisqIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U
IE9GCisqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUworKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQorKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GCisqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyov
CisKKyNwcmFnbWEgb25jZQorCisjaWYgSEFWRShQREZLSVQpCisKKyNpbXBvcnQgPFBERktpdC9Q
REZLaXQuaD4KKworI2ltcG9ydCA8d3RmL1NvZnRMaW5raW5nLmg+CisKK1NPRlRfTElOS19GUkFN
RVdPUktfRk9SX0hFQURFUihXZWJLaXQsIFBERktpdCkKKworQUxMT1dfREVQUkVDQVRFRF9ERUNM
QVJBVElPTlNfQkVHSU4KK1NPRlRfTElOS19DTEFTU19GT1JfSEVBREVSKFdlYktpdCwgUERGQW5u
b3RhdGlvbkxpbmspCitTT0ZUX0xJTktfQ0xBU1NfRk9SX0hFQURFUihXZWJLaXQsIFBERkRvY3Vt
ZW50KQorU09GVF9MSU5LX0NMQVNTX0ZPUl9IRUFERVIoV2ViS2l0LCBQREZMYXllckNvbnRyb2xs
ZXIpCitTT0ZUX0xJTktfQ0xBU1NfRk9SX0hFQURFUihXZWJLaXQsIFBERkFubm90YXRpb25UZXh0
V2lkZ2V0KQorU09GVF9MSU5LX0NMQVNTX0ZPUl9IRUFERVIoV2ViS2l0LCBQREZBbm5vdGF0aW9u
Q2hvaWNlV2lkZ2V0KQorU09GVF9MSU5LX0NMQVNTX0ZPUl9IRUFERVIoV2ViS2l0LCBQREZTZWxl
Y3Rpb24pCitBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19FTkQKKworI2VuZGlmIC8vIEhB
VkUoUERGS0lUKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvUERGS2l0
U29mdExpbmsubW0gYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9Db2NvYS9QREZLaXRTb2Z0TGluay5t
bQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4wMTRjMmUwYzljYTA4NTM3YjIwY2ZkNTJlZDg1ODAxOWQxOWU2ZDg4Ci0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvUERGS2l0U29mdExp
bmsubW0KQEAgLTAsMCArMSw0MyBAQAorLyoKKyogQ29weXJpZ2h0IChDKSAyMDIxIEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyoKKyogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworKiBh
cmUgbWV0OgorKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBp
biB0aGUKKyogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyoKKyogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBC
WSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworKiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKKyogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUgorKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyogQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgor
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgorKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyogQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkKKyogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisqLworCisjaW1wb3J0ICJjb25maWcuaCIKKworI2lmIEhBVkUoUERGS0lUKQorCisj
aW1wb3J0IDx3dGYvU29mdExpbmtpbmcuaD4KKworU09GVF9MSU5LX0ZSQU1FV09SS19GT1JfU09V
UkNFKFdlYktpdCwgUERGS2l0KQorCitBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19CRUdJ
TgorU09GVF9MSU5LX0NMQVNTX0ZPUl9TT1VSQ0UoV2ViS2l0LCBQREZLaXQsIFBERkFubm90YXRp
b25MaW5rKQorU09GVF9MSU5LX0NMQVNTX0ZPUl9TT1VSQ0UoV2ViS2l0LCBQREZLaXQsIFBERkRv
Y3VtZW50KQorU09GVF9MSU5LX0NMQVNTX0ZPUl9TT1VSQ0UoV2ViS2l0LCBQREZLaXQsIFBERkxh
eWVyQ29udHJvbGxlcikKK1NPRlRfTElOS19DTEFTU19GT1JfU09VUkNFKFdlYktpdCwgUERGS2l0
LCBQREZBbm5vdGF0aW9uVGV4dFdpZGdldCkKK1NPRlRfTElOS19DTEFTU19GT1JfU09VUkNFKFdl
YktpdCwgUERGS2l0LCBQREZBbm5vdGF0aW9uQ2hvaWNlV2lkZ2V0KQorU09GVF9MSU5LX0NMQVNT
X0ZPUl9TT1VSQ0UoV2ViS2l0LCBQREZLaXQsIFBERlNlbGVjdGlvbikKK0FMTE9XX0RFUFJFQ0FU
RURfREVDTEFSQVRJT05TX0VORAorCisjZW5kaWYgLy8gSEFWRShQREZLSVQpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9tYWMvUERGS2l0SW1wb3J0cy5oIGIvU291cmNlL1dlYktp
dC9TaGFyZWQvbWFjL1BERktpdEltcG9ydHMuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggYzVhZDI5ZTE5ZGQwNzhkMzU2MjBkNGJlZGQxZTk3YWQ3ODUxMWRiZC4uMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9t
YWMvUERGS2l0SW1wb3J0cy5oCisrKyAvZGV2L251bGwKQEAgLTEsNDkgKzAsMCBAQAotLyoKLSAq
IENvcHlyaWdodCAoQykgMjAxMiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgot
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJ
VFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
Ci0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgot
ICovCi0KLSNpZm5kZWYgUERGS2l0SW1wb3J0c19oCi0jZGVmaW5lIFBERktpdEltcG9ydHNfaAot
Ci0jaWYgUExBVEZPUk0oTUFDKQotCi1uYW1lc3BhY2UgV2ViS2l0IHsKLQotTlNTdHJpbmcgKnBk
ZktpdEZyYW1ld29ya1BhdGgoKTsKLUNsYXNzIGNsYXNzRnJvbVBERktpdChOU1N0cmluZyAqY2xh
c3NOYW1lKTsKLUNsYXNzIHBkZkFubm90YXRpb25MaW5rQ2xhc3MoKTsKLUNsYXNzIHBkZkRvY3Vt
ZW50Q2xhc3MoKTsKLQotI2lmIEVOQUJMRShQREZLSVRfUExVR0lOKQotQ2xhc3MgcGRmTGF5ZXJD
b250cm9sbGVyQ2xhc3MoKTsKLUNsYXNzIHBkZkFubm90YXRpb25UZXh0V2lkZ2V0Q2xhc3MoKTsK
LUNsYXNzIHBkZkFubm90YXRpb25DaG9pY2VXaWRnZXRDbGFzcygpOwotQ2xhc3MgcGRmU2VsZWN0
aW9uQ2xhc3MoKTsKLSNlbmRpZgotCi19Ci0KLSNlbmRpZiAvLyBQTEFURk9STShNQUMpCi0KLSNl
bmRpZiAvLyBQREZLaXRJbXBvcnRzX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L21hYy9QREZLaXRJbXBvcnRzLm1tIGIvU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL1BERktpdElt
cG9ydHMubW0KZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY4M2I4ZmM1NDJmMjQ5ZjY1
Y2ZkZTdiZWU0MDg5OWQyOWYxNTIzMmEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL1BERktpdEltcG9ydHMubW0K
KysrIC9kZXYvbnVsbApAQCAtMSw5MyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEy
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29k
ZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRp
c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly
aWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNP
RlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBB
UyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJV
VE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
Ci0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2ltcG9ydCAiY29u
ZmlnLmgiCi0jaW1wb3J0ICJQREZLaXRJbXBvcnRzLmgiCi0KLSNpZiBQTEFURk9STShNQUMpCi0K
LW5hbWVzcGFjZSBXZWJLaXQgewotCi1OU1N0cmluZyAqcGRmS2l0RnJhbWV3b3JrUGF0aCgpCi17
Ci0gICAgTlNTdHJpbmcgKnN5c3RlbUxpYnJhcnlQYXRoID0gW05TU2VhcmNoUGF0aEZvckRpcmVj
dG9yaWVzSW5Eb21haW5zKE5TTGlicmFyeURpcmVjdG9yeSwgTlNTeXN0ZW1Eb21haW5NYXNrLCBO
Tykgb2JqZWN0QXRJbmRleDowXTsKLSAgICByZXR1cm4gW3N5c3RlbUxpYnJhcnlQYXRoIHN0cmlu
Z0J5QXBwZW5kaW5nUGF0aENvbXBvbmVudDpAIkZyYW1ld29ya3MvUXVhcnR6LmZyYW1ld29yay9G
cmFtZXdvcmtzL1BERktpdC5mcmFtZXdvcmsiXTsKLX0KLQotQ2xhc3MgY2xhc3NGcm9tUERGS2l0
KE5TU3RyaW5nICpjbGFzc05hbWUpCi17Ci0gICAgc3RhdGljIE5TQnVuZGxlICpwZGZLaXRCdW5k
bGUgPSBbTlNCdW5kbGUgYnVuZGxlV2l0aFBhdGg6cGRmS2l0RnJhbWV3b3JrUGF0aCgpXTsKLSAg
ICBbcGRmS2l0QnVuZGxlIGxvYWRdOwotICAgIHJldHVybiBbcGRmS2l0QnVuZGxlIGNsYXNzTmFt
ZWQ6Y2xhc3NOYW1lXTsKLX0KLQotQ2xhc3MgcGRmQW5ub3RhdGlvbkxpbmtDbGFzcygpCi17Ci0g
ICAgc3RhdGljIENsYXNzIHBkZkFubm90YXRpb25MaW5rQ2xhc3MgPSBjbGFzc0Zyb21QREZLaXQo
QCJQREZBbm5vdGF0aW9uTGluayIpOwotICAgIEFTU0VSVChwZGZBbm5vdGF0aW9uTGlua0NsYXNz
KTsKLSAgICByZXR1cm4gcGRmQW5ub3RhdGlvbkxpbmtDbGFzczsKLX0KLQotQ2xhc3MgcGRmRG9j
dW1lbnRDbGFzcygpCi17Ci0gICAgc3RhdGljIENsYXNzIHBkZkRvY3VtZW50Q2xhc3MgPSBjbGFz
c0Zyb21QREZLaXQoQCJQREZEb2N1bWVudCIpOwotICAgIEFTU0VSVChwZGZEb2N1bWVudENsYXNz
KTsKLSAgICByZXR1cm4gcGRmRG9jdW1lbnRDbGFzczsKLX0KLSAgICAKLSNpZiBFTkFCTEUoUERG
S0lUX1BMVUdJTikKLUNsYXNzIHBkZkxheWVyQ29udHJvbGxlckNsYXNzKCkKLXsKLSAgICBzdGF0
aWMgQ2xhc3MgcGRmTGF5ZXJDb250cm9sbGVyQ2xhc3MgPSBjbGFzc0Zyb21QREZLaXQoQCJQREZM
YXllckNvbnRyb2xsZXIiKTsKLSAgICBBU1NFUlQocGRmTGF5ZXJDb250cm9sbGVyQ2xhc3MpOwot
ICAgIHJldHVybiBwZGZMYXllckNvbnRyb2xsZXJDbGFzczsKLX0KLQotQ2xhc3MgcGRmQW5ub3Rh
dGlvblRleHRXaWRnZXRDbGFzcygpCi17Ci0gICAgc3RhdGljIENsYXNzIHBkZkFubm90YXRpb25U
ZXh0V2lkZ2V0Q2xhc3MgPSBjbGFzc0Zyb21QREZLaXQoQCJQREZBbm5vdGF0aW9uVGV4dFdpZGdl
dCIpOwotICAgIEFTU0VSVChwZGZBbm5vdGF0aW9uVGV4dFdpZGdldENsYXNzKTsKLSAgICByZXR1
cm4gcGRmQW5ub3RhdGlvblRleHRXaWRnZXRDbGFzczsKLX0KLQotQ2xhc3MgcGRmQW5ub3RhdGlv
bkNob2ljZVdpZGdldENsYXNzKCkKLXsKLSAgICBzdGF0aWMgQ2xhc3MgcGRmQW5ub3RhdGlvbkNo
b2ljZVdpZGdldENsYXNzID0gY2xhc3NGcm9tUERGS2l0KEAiUERGQW5ub3RhdGlvbkNob2ljZVdp
ZGdldCIpOwotICAgIEFTU0VSVChwZGZBbm5vdGF0aW9uQ2hvaWNlV2lkZ2V0Q2xhc3MpOwotICAg
IHJldHVybiBwZGZBbm5vdGF0aW9uQ2hvaWNlV2lkZ2V0Q2xhc3M7Ci19Ci0KLUNsYXNzIHBkZlNl
bGVjdGlvbkNsYXNzKCkKLXsKLSAgICBzdGF0aWMgQ2xhc3MgcGRmU2VsZWN0aW9uQ2xhc3MgPSBj
bGFzc0Zyb21QREZLaXQoQCJQREZTZWxlY3Rpb24iKTsKLSAgICBBU1NFUlQocGRmU2VsZWN0aW9u
Q2xhc3MpOwotICAgIHJldHVybiBwZGZTZWxlY3Rpb25DbGFzczsKLX0KLQotI2VuZGlmCi0KLX0K
LQotI2VuZGlmIC8vIFBMQVRGT1JNKE1BQykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU291
cmNlc0NvY29hLnR4dCBiL1NvdXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dAppbmRleCAwOWI0
ZGFkODcwNDIzYzFjM2E2M2I3NjZmMWM1MGE2YWU5OTE0ZTAzLi4yMzFmNGVhODhmOGE5MTkxM2Rj
ODA2YzFmNmYxY2RmMzE0YjkyNjYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1NvdXJjZXND
b2NvYS50eHQKKysrIGIvU291cmNlL1dlYktpdC9Tb3VyY2VzQ29jb2EudHh0CkBAIC0xNTgsNiAr
MTU4LDcgQEAgU2hhcmVkL0NvY29hL0NvcmVUZXh0SGVscGVycy5tbQogU2hhcmVkL0NvY29hL0Rh
dGFEZXRlY3Rpb25SZXN1bHQubW0KIFNoYXJlZC9Db2NvYS9JbnNlcnRUZXh0T3B0aW9ucy5jcHAK
IFNoYXJlZC9Db2NvYS9Mb2FkUGFyYW1ldGVyc0NvY29hLm1tCitTaGFyZWQvQ29jb2EvUERGS2l0
U29mdExpbmsubW0KIFNoYXJlZC9Db2NvYS9TYW5kYm94RXh0ZW5zaW9uQ29jb2EubW0KIFNoYXJl
ZC9Db2NvYS9TYW5kYm94SW5pdGlhbGlhdGlvblBhcmFtZXRlcnNDb2NvYS5tbQogU2hhcmVkL0Nv
Y29hL1NhbmRib3hVdGlsaXRpZXMubW0KQEAgLTIwMyw3ICsyMDQsNiBAQCBTaGFyZWQvbWFjL05h
dGl2ZVdlYk1vdXNlRXZlbnRNYWMubW0KIFNoYXJlZC9tYWMvTmF0aXZlV2ViV2hlZWxFdmVudE1h
Yy5tbQogU2hhcmVkL21hYy9PYmpDT2JqZWN0R3JhcGgubW0KIFNoYXJlZC9tYWMvUGFzdGVib2Fy
ZFR5cGVzLm1tCi1TaGFyZWQvbWFjL1BERktpdEltcG9ydHMubW0KIFNoYXJlZC9tYWMvUHJpbnRJ
bmZvTWFjLm1tCiBTaGFyZWQvbWFjL1NlY0l0ZW1SZXF1ZXN0RGF0YS5jcHAKIFNoYXJlZC9tYWMv
U2VjSXRlbVJlc3BvbnNlRGF0YS5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL21hYy9XS1ByaW50aW5nVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9X
S1ByaW50aW5nVmlldy5tbQppbmRleCA4Y2EwMTRjMTQ1MGJjNGY5MDliM2FkNzA5NDEzMzYwOGEy
NGIyZTQ5Li4wNTVjNjAxZmU3ZmQ4NTdlOTMzMTUyNDM3OTM2NjkwYzQxYzFjYzcyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV0tQcmludGluZ1ZpZXcubW0KKysrIGIv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFjL1dLUHJpbnRpbmdWaWV3Lm1tCkBAIC0zMCw3ICsz
MCw3IEBACiAKICNpbXBvcnQgIkFQSURhdGEuaCIKICNpbXBvcnQgIkxvZ2dpbmcuaCIKLSNpbXBv
cnQgIlBERktpdEltcG9ydHMuaCIKKyNpbXBvcnQgIlBERktpdFNvZnRMaW5rLmgiCiAjaW1wb3J0
ICJQcmludEluZm8uaCIKICNpbXBvcnQgIlNoYXJlYWJsZUJpdG1hcC5oIgogI2ltcG9ydCAiV2Vi
UGFnZVByb3h5LmgiCkBAIC00ODYsNyArNDg2LDcgQEAgLSAodm9pZClfZHJhd1BERkRvY3VtZW50
OihQREZEb2N1bWVudCAqKXBkZkRvY3VtZW50IHBhZ2U6KHVuc2lnbmVkKXBhZ2UgYXRQb2ludDoK
ICAgICB9CiAKICAgICBmb3IgKFBERkFubm90YXRpb24gKmFubm90YXRpb24gaW4gW3BkZlBhZ2Ug
YW5ub3RhdGlvbnNdKSB7Ci0gICAgICAgIGlmICghW2Fubm90YXRpb24gaXNLaW5kT2ZDbGFzczpX
ZWJLaXQ6OnBkZkFubm90YXRpb25MaW5rQ2xhc3MoKV0pCisgICAgICAgIGlmICghW2Fubm90YXRp
b24gaXNLaW5kT2ZDbGFzczpXZWJLaXQ6OmdldFBERkFubm90YXRpb25MaW5rQ2xhc3MoKV0pCiAg
ICAgICAgICAgICBjb250aW51ZTsKIAogICAgICAgICBBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFU
SU9OU19CRUdJTgpAQCAtNTg0LDcgKzU4NCw3IEBAIC0gKHZvaWQpZHJhd1JlY3Q6KE5TUmVjdClu
c1JlY3QKIAogICAgIGlmICghX3ByaW50ZWRQYWdlc1BERkRvY3VtZW50KSB7CiAgICAgICAgIFJl
dGFpblB0cjxOU0RhdGE+IHBkZkRhdGEgPSBhZG9wdE5TKFtbTlNEYXRhIGFsbG9jXSBpbml0V2l0
aEJ5dGVzOl9wcmludGVkUGFnZXNEYXRhLmRhdGEoKSBsZW5ndGg6X3ByaW50ZWRQYWdlc0RhdGEu
c2l6ZSgpXSk7Ci0gICAgICAgIF9wcmludGVkUGFnZXNQREZEb2N1bWVudCA9IGFkb3B0TlMoW1tX
ZWJLaXQ6OnBkZkRvY3VtZW50Q2xhc3MoKSBhbGxvY10gaW5pdFdpdGhEYXRhOnBkZkRhdGEuZ2V0
KCldKTsKKyAgICAgICAgX3ByaW50ZWRQYWdlc1BERkRvY3VtZW50ID0gYWRvcHROUyhbV2ViS2l0
OjphbGxvY1BERkRvY3VtZW50SW5zdGFuY2UoKSBpbml0V2l0aERhdGE6cGRmRGF0YS5nZXQoKV0p
OwogCiAgICAgICAgIHVuc2lnbmVkIHBhZ2VDb3VudCA9IFtfcHJpbnRlZFBhZ2VzUERGRG9jdW1l
bnQgcGFnZUNvdW50XTsKICAgICAgICAgX2xpbmtEZXN0aW5hdGlvbnNQZXJQYWdlLmNsZWFyKCk7
CkBAIC01OTIsNyArNTkyLDcgQEAgLSAodm9pZClkcmF3UmVjdDooTlNSZWN0KW5zUmVjdAogICAg
ICAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgcGFnZUNvdW50OyBpKyspIHsKICAgICAgICAg
ICAgIFBERlBhZ2UgKnBhZ2UgPSBbX3ByaW50ZWRQYWdlc1BERkRvY3VtZW50IHBhZ2VBdEluZGV4
OmldOwogICAgICAgICAgICAgZm9yIChQREZBbm5vdGF0aW9uICphbm5vdGF0aW9uIGluIHBhZ2Uu
YW5ub3RhdGlvbnMpIHsKLSAgICAgICAgICAgICAgICBpZiAoIVthbm5vdGF0aW9uIGlzS2luZE9m
Q2xhc3M6V2ViS2l0OjpwZGZBbm5vdGF0aW9uTGlua0NsYXNzKCldKQorICAgICAgICAgICAgICAg
IGlmICghW2Fubm90YXRpb24gaXNLaW5kT2ZDbGFzczpXZWJLaXQ6OmdldFBERkFubm90YXRpb25M
aW5rQ2xhc3MoKV0pCiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogCiAgICAgICAgICAg
ICAgICAgQUxMT1dfREVQUkVDQVRFRF9ERUNMQVJBVElPTlNfQkVHSU4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2Vi
S2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDI1MTI1NDFjNWVmOTYw
NTcwNmRkMDc0MWZiMDQyMzVhMWUzMDAxNDYuLjhjZjFhN2FkZDI4NGU1ZTI0ZDU4MGI3ZTY2NTc5
MzQ3MTI2M2E1ZjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagpAQCAtMTk1MCw3ICsxOTUwLDYgQEAKIAkJRTE4RTY5MEMxNjlCNTYzRjAwOUI2
NjcwIC8qIFNlY0l0ZW1TaGltUHJveHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEUxOEU2OTBBMTY5QjU2M0YwMDlCNjY3MCAvKiBTZWNJdGVtU2hpbVBy
b3h5LmggKi87IH07CiAJCUUxOEU2OTE3MTY5QjY2N0IwMDlCNjY3MCAvKiBTZWNJdGVtU2hpbVBy
b3h5TWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IEUxOEU2OTEzMTY5QjY2N0IwMDlCNjY3MCAvKiBTZWNJdGVtU2hpbVByb3h5
TWVzc2FnZVJlY2VpdmVyLmNwcCAqLzsgfTsKIAkJRTE4RTY5MTgxNjlCNjY3QjAwOUI2NjcwIC8q
IFNlY0l0ZW1TaGltUHJveHlNZXNzYWdlcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gRTE4RTY5MTQxNjlCNjY3QjAwOUI2NjcwIC8qIFNlY0l0ZW1TaGlt
UHJveHlNZXNzYWdlcy5oICovOyB9OwotCQlFMTk1ODJEMzE1M0NCRkQ3MDBCNjA4NzUgLyogUERG
S2l0SW1wb3J0cy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRTE5NTgyRDIxNTNDQkZENzAwQjYwODc1IC8qIFBERktpdEltcG9ydHMuaCAqLzsgfTsKIAkJ
RTE5QkRBODYxOTM2NjVFMzAwQjk3RjU3IC8qIGNvbS5hcHBsZS5hcHBzdG9yZS5Db2RlUmVkZWVt
ZXJOZXRzY2FwZVBsdWdpbi5zYiBpbiBDb3B5IFBsdWctaW4gU2FuZGJveCBQcm9maWxlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMTlCREE4NDE5MzY1RjRCMDBCOTdGNTcg
LyogY29tLmFwcGxlLmFwcHN0b3JlLkNvZGVSZWRlZW1lck5ldHNjYXBlUGx1Z2luLnNiICovOyB9
OwogCQlFMUFFQTIyRjE0Njg3QkRCMDA4MDQ1NjkgLyogV0tGdWxsS2V5Ym9hcmRBY2Nlc3NXYXRj
aGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMUFF
QTIyRDE0Njg3QkRCMDA4MDQ1NjkgLyogV0tGdWxsS2V5Ym9hcmRBY2Nlc3NXYXRjaGVyLmggKi87
IH07CiAJCUUxQjc4NDcxMTYzRjI0NjkwMDA3QjY5MiAvKiBSZW1vdGVOZXR3b3JraW5nQ29udGV4
dC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFCNzg0
NzAxNjNGMjQ2OTAwMDdCNjkyIC8qIFJlbW90ZU5ldHdvcmtpbmdDb250ZXh0LmggKi87IH07CkBA
IC0zMTQwLDYgKzMxMzksOCBAQAogCQkyRDNFRjQ0MTE5MTc2NDYzMDAwMzQxODQgLyogV2ViTWVt
b3J5UHJlc3N1cmVIYW5kbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdl
Yk1lbW9yeVByZXNzdXJlSGFuZGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQky
RDQyOUJGQTE3MjFFMkJBMDBFQzY4MUYgLyogUERGUGx1Z2luUGFzc3dvcmRGaWVsZC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBQREZQbHVnaW5QYXNzd29yZEZpZWxkLmg7IHBh
dGggPSBQREYvUERGUGx1Z2luUGFzc3dvcmRGaWVsZC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkyRDQyOUJGQjE3MjFFMkJBMDBFQzY4MUYgLyogUERGUGx1Z2luUGFzc3dvcmRGaWVs
ZC5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9IFBERlBsdWdpblBh
c3N3b3JkRmllbGQubW07IHBhdGggPSBQREYvUERGUGx1Z2luUGFzc3dvcmRGaWVsZC5tbTsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMkQ0NDBCODIyNUVGMjM1RTAwQTk4RDg3IC8qIFBE
RktpdFNvZnRMaW5rLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUERGS2l0U29mdExpbmsubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJENDQwQjgzMjVFRjIzNUUwMEE5OEQ4NyAv
KiBQREZLaXRTb2Z0TGluay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQREZLaXRTb2Z0TGluay5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyRDQ3QjU2QTE4MTA3MTRFMDAzQTNBRUUgLyogUmVt
b3RlTGF5ZXJCYWNraW5nU3RvcmUubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7
IHBhdGggPSBSZW1vdGVMYXllckJhY2tpbmdTdG9yZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMkQ0N0I1NkIxODEwNzE0RTAwM0EzQUVFIC8qIFJlbW90ZUxheWVyQmFja2luZ1N0
b3JlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFJlbW90ZUxheWVyQmFja2lu
Z1N0b3JlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTJENEFGMDg4MjA0NEMzQzQw
MDZDODgxNyAvKiBGcm9udEJvYXJkU2VydmljZXNTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gRnJvbnRCb2FyZFNlcnZpY2VzU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CkBAIC01NzgxLDggKzU3ODIsNiBAQAogCQlFMThFNjkxNDE2OUI2NjdCMDA5QjY2NzAg
LyogU2VjSXRlbVNoaW1Qcm94eU1lc3NhZ2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
bmFtZSA9IFNlY0l0ZW1TaGltUHJveHlNZXNzYWdlcy5oOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMv
V2ViS2l0Mi9TZWNJdGVtU2hpbVByb3h5TWVzc2FnZXMuaDsgc291cmNlVHJlZSA9IEJVSUxUX1BS
T0RVQ1RTX0RJUjsgfTsKIAkJRTE4RTY5NDcxNjlCNzdDODAwOUI2NjcwIC8qIFNlY0l0ZW1TaGlt
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNlY0l0ZW1TaGltLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTE4RTY5NDgxNjlCNzdDODAwOUI2Njcw
IC8qIFNlY0l0ZW1TaGltLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNlY0l0
ZW1TaGltLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUUxOTU4MkQyMTUzQ0JGRDcw
MEI2MDg3NSAvKiBQREZLaXRJbXBvcnRzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFBERktpdEltcG9ydHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJRTE5NTgy
RDQxNTNDQzA1MzAwQjYwODc1IC8qIFBERktpdEltcG9ydHMubW0gKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQREZLaXRJbXBvcnRzLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlFMTk2N0UzNzE1MEFCNUUyMDBDNzMxNjkgLyogY29tLmFwcGxlLldlYlBy
b2Nlc3Muc2IgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBuYW1lID0gY29tLmFwcGxlLldlYlByb2Nlc3Muc2I7
IHBhdGggPSBEZXJpdmVkU291cmNlcy9XZWJLaXQyL2NvbS5hcHBsZS5XZWJQcm9jZXNzLnNiOyBz
b3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OwogCQlFMTlCREE4NDE5MzY1RjRCMDBC
OTdGNTcgLyogY29tLmFwcGxlLmFwcHN0b3JlLkNvZGVSZWRlZW1lck5ldHNjYXBlUGx1Z2luLnNi
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IGNvbS5hcHBsZS5hcHBzdG9yZS5Db2RlUmVkZWVtZXJO
ZXRzY2FwZVBsdWdpbi5zYjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTE5QkRBODgx
OTM2ODZBNDAwQjk3RjU3IC8qIFNhbmRib3hVdGlsaXRpZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gU2FuZGJveFV0aWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtODAyOSw3ICs4MDI4LDYgQEAKIAkJCQk1MUQxMjQ4NTFFNzM0QUUzMDAyQjI4MjAg
LyogV0tIVFRQQ29va2llU3RvcmUubW0gKi8sCiAJCQkJNTFEMTI0ODYxRTczNEFFMzAwMkIyODIw
IC8qIFdLSFRUUENvb2tpZVN0b3JlSW50ZXJuYWwuaCAqLywKIAkJCQlERjQ2MkUwRTIzRjIyRjUz
MDBFRkYzNUYgLyogV0tIVFRQQ29va2llU3RvcmVQcml2YXRlLmggKi8sCi0JCQkJNDk5MTdEQTYy
NTJENjQ5RTAwNTAzMTNGIC8qIFdLTWVkaWFQbGF5YmFja1N0YXRlLmggKi8sCiAJCQkJMUFCNDBF
RTMxQkY2NzdFMzAwQkE4MUJFIC8qIFdLTWVudUl0ZW1JZGVudGlmaWVycy5tbSAqLywKIAkJCQkx
QUI0MEVFNDFCRjY3N0UzMDBCQTgxQkUgLyogV0tNZW51SXRlbUlkZW50aWZpZXJzUHJpdmF0ZS5o
ICovLAogCQkJCTFBNUIxQzRGMTg5ODYwNkYwMDRGQ0Y5QiAvKiBXS05hdmlnYXRpb24uaCAqLywK
QEAgLTgxNDQsNiArODE0Miw4IEBACiAJCQkJQ0U1NTBFMTIyMjgzNzNDODAwRDI4NzkxIC8qIElu
c2VydFRleHRPcHRpb25zLmggKi8sCiAJCQkJQzE2NjNFNUEyNEFFQTc0MjAwQzZBM0IyIC8qIExh
dW5jaFNlcnZpY2VzRGF0YWJhc2VYUENDb25zdGFudHMuaCAqLywKIAkJCQkyRDEwODc2MjFEMkM2
NDFCMDBCODVGODIgLyogTG9hZFBhcmFtZXRlcnNDb2NvYS5tbSAqLywKKwkJCQkyRDQ0MEI4MzI1
RUYyMzVFMDBBOThEODcgLyogUERGS2l0U29mdExpbmsuaCAqLywKKwkJCQkyRDQ0MEI4MjI1RUYy
MzVFMDBBOThEODcgLyogUERGS2l0U29mdExpbmsubW0gKi8sCiAJCQkJN0FCNEVBM0YyMjc3N0M0
NjAwODVCQkFBIC8qIFNhbmRib3hFeHRlbnNpb25Db2NvYS5tbSAqLywKIAkJCQk3QUI0RUE0MTIy
Nzc3RkM3MDA4NUJCQUEgLyogU2FuZGJveEluaXRpYWxpYXRpb25QYXJhbWV0ZXJzQ29jb2EubW0g
Ki8sCiAJCQkJRTE5QkRBODgxOTM2ODZBNDAwQjk3RjU3IC8qIFNhbmRib3hVdGlsaXRpZXMuaCAq
LywKQEAgLTEwMjg0LDggKzEwMjg0LDYgQEAKIAkJCQlDNTc0QTU3RjEyRTY2NjgxMDAyREZFOTgg
LyogUGFzdGVib2FyZFR5cGVzLmggKi8sCiAJCQkJQzU3NEE1ODAxMkU2NjY4MTAwMkRGRTk4IC8q
IFBhc3RlYm9hcmRUeXBlcy5tbSAqLywKIAkJCQlDMUUxMjNCOTIwQTExNTcyMDAyNjQ2RjQgLyog
UERGQ29udGV4dE1lbnUuaCAqLywKLQkJCQlFMTk1ODJEMjE1M0NCRkQ3MDBCNjA4NzUgLyogUERG
S2l0SW1wb3J0cy5oICovLAotCQkJCUUxOTU4MkQ0MTUzQ0MwNTMwMEI2MDg3NSAvKiBQREZLaXRJ
bXBvcnRzLm1tICovLAogCQkJCUUxQ0MxQjhGMTJEN0VBREYwMDYyNTgzOCAvKiBQcmludEluZm9N
YWMubW0gKi8sCiAJCQkJNTFEMTMwNEYxMzgyRUFDMDAwMzUxRUREIC8qIFNlY0l0ZW1SZXF1ZXN0
RGF0YS5jcHAgKi8sCiAJCQkJNTFEMTMwNTAxMzgyRUFDMDAwMzUxRUREIC8qIFNlY0l0ZW1SZXF1
ZXN0RGF0YS5oICovLApAQCAtMTE5NTgsNyArMTE5NTYsNiBAQAogCQkJCUExNzk4QjNFMjIyRDk3
QTIwMDA3NjRCRCAvKiBQYXltZW50QXV0aG9yaXphdGlvblByZXNlbnRlci5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQTE3OThCNDMyMjJEOThERjAwMDc2NEJEIC8qIFBheW1lbnRBdXRob3JpemF0aW9u
Vmlld0NvbnRyb2xsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUMxRTEyM0JBMjBBMTE1NzMwMDI2
NDZGNCAvKiBQREZDb250ZXh0TWVudS5oIGluIEhlYWRlcnMgKi8sCi0JCQkJRTE5NTgyRDMxNTND
QkZENzAwQjYwODc1IC8qIFBERktpdEltcG9ydHMuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDMjk4
REEwMUMzREYwMjEwMDQ3MEFGRSAvKiBQZW5kaW5nRG93bmxvYWQuaCBpbiBIZWFkZXJzICovLAog
CQkJCTgzMkVEMThDMUUyRkUxNTcwMDZCQTY0QSAvKiBQZXJBY3Rpdml0eVN0YXRlQ1BVVXNhZ2VT
YW1wbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk3QUZCRDM2RjIxRTU0NkY4MDA1REJBQ0IgLyog
UGVyc2lzdGVuY3lVdGlscy5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvUGx1Z2lucy9QREYvUERGUGx1Z2luLmggYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvUGx1Z2lucy9QREYvUERGUGx1Z2luLmgKaW5kZXggZjA3Yjc4ZWVlODhkYjQwMWVj
MDc5MjcyNzk0ZmE1NmFlZjJjNTUyNi4uYjVlNmU1MThiZDVmOTAwZWMwZTFkOTQ0ZmViNTc0ODI5
NzMzOTA2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvUERG
L1BERlBsdWdpbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1BERi9Q
REZQbHVnaW4uaApAQCAtMjgsNyArMjgsNiBAQAogI2lmIEVOQUJMRShQREZLSVRfUExVR0lOKQog
CiAjaW5jbHVkZSAiRGF0YVJlZmVyZW5jZS5oIgotI2luY2x1ZGUgIlBERktpdEltcG9ydHMuaCIK
ICNpbmNsdWRlICJQREZQbHVnaW5JZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiUGx1Z2luLmgiCiAj
aW5jbHVkZSAiV2ViRXZlbnQuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9QbHVnaW5zL1BERi9QREZQbHVnaW4ubW0gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvUGx1
Z2lucy9QREYvUERGUGx1Z2luLm1tCmluZGV4IDg1MmE4MDg1MThlMmQ4NzA2ZDYzYzU1MzE3NWQ3
YzdmM2M2YzdhYjcuLjZiYTBmNTVmMTI0MWZhMDc3NTBlYTRlMTQ4MDAzOWJkMTk2Nzk2ZDAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1BERi9QREZQbHVnaW4u
bW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpbi5t
bQpAQCAtMzQsNiArMzQsNyBAQAogI2ltcG9ydCAiTG9nZ2luZy5oIgogI2ltcG9ydCAiUERGQW5u
b3RhdGlvblRleHRXaWRnZXREZXRhaWxzLmgiCiAjaW1wb3J0ICJQREZDb250ZXh0TWVudS5oIgor
I2ltcG9ydCAiUERGS2l0U29mdExpbmsuaCIKICNpbXBvcnQgIlBERkxheWVyQ29udHJvbGxlclNQ
SS5oIgogI2ltcG9ydCAiUERGUGx1Z2luQW5ub3RhdGlvbi5oIgogI2ltcG9ydCAiUERGUGx1Z2lu
UGFzc3dvcmRGaWVsZC5oIgpAQCAtNTk2LDcgKzU5Nyw3IEBAIGlubGluZSBQREZQbHVnaW46OlBE
RlBsdWdpbihXZWJGcmFtZSYgZnJhbWUpCiAgICAgLCBtX2NvbnRhaW5lckxheWVyKGFkb3B0TlMo
W1tDQUxheWVyIGFsbG9jXSBpbml0XSkpCiAgICAgLCBtX2NvbnRlbnRMYXllcihhZG9wdE5TKFtb
Q0FMYXllciBhbGxvY10gaW5pdF0pKQogICAgICwgbV9zY3JvbGxDb3JuZXJMYXllcihhZG9wdE5T
KFtbV0tQREZQbHVnaW5TY3JvbGxiYXJMYXllciBhbGxvY10gaW5pdFdpdGhQREZQbHVnaW46dGhp
c10pKQotICAgICwgbV9wZGZMYXllckNvbnRyb2xsZXIoYWRvcHROUyhbW3BkZkxheWVyQ29udHJv
bGxlckNsYXNzKCkgYWxsb2NdIGluaXRdKSkKKyAgICAsIG1fcGRmTGF5ZXJDb250cm9sbGVyKGFk
b3B0TlMoW2FsbG9jUERGTGF5ZXJDb250cm9sbGVySW5zdGFuY2UoKSBpbml0XSkpCiAgICAgLCBt
X3BkZkxheWVyQ29udHJvbGxlckRlbGVnYXRlKGFkb3B0TlMoW1tXS1BERkxheWVyQ29udHJvbGxl
ckRlbGVnYXRlIGFsbG9jXSBpbml0V2l0aFBERlBsdWdpbjp0aGlzXSkpCiAjaWYgSEFWRShJTkNS
RU1FTlRBTF9QREZfQVBJUykKICAgICAsIG1fc3RyZWFtTG9hZGVyQ2xpZW50KGFkb3B0UmVmKCpu
ZXcgUERGUGx1Z2luU3RyZWFtTG9hZGVyQ2xpZW50KCp0aGlzKSkpCkBAIC03MzgsNyArNzM5LDcg
QEAgdm9pZCBQREZQbHVnaW46OnJlY2VpdmVkTm9uTGluZWFyaXplZFBERlNlbnRpbmVsKCkKICAg
ICBpZiAoIW1fZG9jdW1lbnRGaW5pc2hlZExvYWRpbmcgfHwgbV9wZGZEb2N1bWVudCkKICAgICAg
ICAgcmV0dXJuOwogCi0gICAgbV9wZGZEb2N1bWVudCA9IGFkb3B0TlMoW1twZGZEb2N1bWVudENs
YXNzKCkgYWxsb2NdIGluaXRXaXRoRGF0YTpyYXdEYXRhKCldKTsKKyAgICBtX3BkZkRvY3VtZW50
ID0gYWRvcHROUyhbYWxsb2NQREZEb2N1bWVudEluc3RhbmNlKCkgaW5pdFdpdGhEYXRhOnJhd0Rh
dGEoKV0pOwogICAgIGluc3RhbGxQREZEb2N1bWVudCgpOwogICAgIHRyeVJ1blNjcmlwdHNJblBE
RkRvY3VtZW50KCk7CiB9CkBAIC04NzgsNyArODc5LDcgQEAgdm9pZCBQREZQbHVnaW46OnRocmVh
ZEVudHJ5KFJlZjxQREZQbHVnaW4+JiYgcHJvdGVjdGVkUGx1Z2luKQogCiAgICAgUmV0YWluUHRy
PENHRGF0YVByb3ZpZGVyUmVmPiBkYXRhUHJvdmlkZXIgPSBhZG9wdENGKENHRGF0YVByb3ZpZGVy
Q3JlYXRlTXVsdGlSYW5nZURpcmVjdEFjY2Vzcyh0aGlzLCBrQ0dEYXRhUHJvdmlkZXJJbmRldGVy
bWluYXRlU2l6ZSwgJmRhdGFQcm92aWRlckNhbGxiYWNrcykpOwogICAgIENHRGF0YVByb3ZpZGVy
U2V0UHJvcGVydHkoZGF0YVByb3ZpZGVyLmdldCgpLCBrQ0dEYXRhUHJvdmlkZXJIYXNIaWdoTGF0
ZW5jeSwga0NGQm9vbGVhblRydWUpOwotICAgIG1fYmFja2dyb3VuZFRocmVhZERvY3VtZW50ID0g
YWRvcHROUyhbW3BkZkRvY3VtZW50Q2xhc3MoKSBhbGxvY10gaW5pdFdpdGhQcm92aWRlcjpkYXRh
UHJvdmlkZXIuZ2V0KCldKTsKKyAgICBtX2JhY2tncm91bmRUaHJlYWREb2N1bWVudCA9IGFkb3B0
TlMoW2FsbG9jUERGRG9jdW1lbnRJbnN0YW5jZSgpIGluaXRXaXRoUHJvdmlkZXI6ZGF0YVByb3Zp
ZGVyLmdldCgpXSk7CiAKICAgICAvLyBbUERGRG9jdW1lbnQgaW5pdFdpdGhQcm92aWRlcjpdIHdp
bGwgcmV0dXJuIG5pbCBpbiBjYXNlcyB3aGVyZSB0aGUgUERGIGlzIG5vbi1saW5lYXJpemVkLgog
ICAgIC8vIEluIHRob3NlIGNhc2VzIHdlJ2xsIGp1c3Qga2VlcCBidWZmZXJpbmcgdGhlIGVudGly
ZSBQREYgb24gdGhlIG1haW4gdGhyZWFkLgpAQCAtMTU5OSw3ICsxNjAwLDcgQEAgdm9pZCBQREZQ
bHVnaW46OmRvY3VtZW50RGF0YURpZEZpbmlzaExvYWRpbmcoKQogICAgIH0gZWxzZQogI2VuZGlm
CiAgICAgewotICAgICAgICBtX3BkZkRvY3VtZW50ID0gYWRvcHROUyhbW3BkZkRvY3VtZW50Q2xh
c3MoKSBhbGxvY10gaW5pdFdpdGhEYXRhOnJhd0RhdGEoKV0pOworICAgICAgICBtX3BkZkRvY3Vt
ZW50ID0gYWRvcHROUyhbYWxsb2NQREZEb2N1bWVudEluc3RhbmNlKCkgaW5pdFdpdGhEYXRhOnJh
d0RhdGEoKV0pOwogICAgICAgICBpbnN0YWxsUERGRG9jdW1lbnQoKTsKICAgICB9CiAKQEAgLTI0
NjQsNyArMjQ2NSw3IEBAIHZvaWQgUERGUGx1Z2luOjpzZXRBY3RpdmVBbm5vdGF0aW9uKFBERkFu
bm90YXRpb24gKmFubm90YXRpb24pCiAKICAgICBpZiAoYW5ub3RhdGlvbikgewogICAgICAgICBB
TExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19CRUdJTgotICAgICAgICBpZiAoW2Fubm90YXRp
b24gaXNLaW5kT2ZDbGFzczpwZGZBbm5vdGF0aW9uVGV4dFdpZGdldENsYXNzKCldICYmIHN0YXRp
Y19jYXN0PFBERkFubm90YXRpb25UZXh0V2lkZ2V0ICo+KGFubm90YXRpb24pLmlzUmVhZE9ubHkp
IHsKKyAgICAgICAgaWYgKFthbm5vdGF0aW9uIGlzS2luZE9mQ2xhc3M6Z2V0UERGQW5ub3RhdGlv
blRleHRXaWRnZXRDbGFzcygpXSAmJiBzdGF0aWNfY2FzdDxQREZBbm5vdGF0aW9uVGV4dFdpZGdl
dCAqPihhbm5vdGF0aW9uKS5pc1JlYWRPbmx5KSB7CiAgICAgICAgICAgICBtX2FjdGl2ZUFubm90
YXRpb24gPSBudWxscHRyOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CkBAIC0yNjkw
LDcgKzI2OTEsNyBAQCBQREZTZWxlY3Rpb24gKlBERlBsdWdpbjo6bmV4dE1hdGNoRm9yU3RyaW5n
KGNvbnN0IFN0cmluZyYgdGFyZ2V0LCBCT09MIHNlYXJjaEZvcgogICAgICAgICBmb3VuZFNlbGVj
dGlvbiA9IFttX3BkZkRvY3VtZW50IGZpbmRTdHJpbmc6dGFyZ2V0IGZyb21TZWxlY3Rpb246aW5p
dGlhbFNlbGVjdGlvbiB3aXRoT3B0aW9uczpvcHRpb25zXTsKIAogICAgIGlmICghZm91bmRTZWxl
Y3Rpb24gJiYgd3JhcFNlYXJjaCkgewotICAgICAgICBhdXRvIGVtcHR5U2VsZWN0aW9uID0gYWRv
cHROUyhbW3BkZlNlbGVjdGlvbkNsYXNzKCkgYWxsb2NdIGluaXRXaXRoRG9jdW1lbnQ6bV9wZGZE
b2N1bWVudC5nZXQoKV0pOworICAgICAgICBhdXRvIGVtcHR5U2VsZWN0aW9uID0gYWRvcHROUyhb
YWxsb2NQREZTZWxlY3Rpb25JbnN0YW5jZSgpIGluaXRXaXRoRG9jdW1lbnQ6bV9wZGZEb2N1bWVu
dC5nZXQoKV0pOwogICAgICAgICBmb3VuZFNlbGVjdGlvbiA9IFttX3BkZkRvY3VtZW50IGZpbmRT
dHJpbmc6dGFyZ2V0IGZyb21TZWxlY3Rpb246ZW1wdHlTZWxlY3Rpb24uZ2V0KCkgd2l0aE9wdGlv
bnM6b3B0aW9uc107CiAgICAgfQogCkBAIC0yODUwLDcgKzI4NTEsNyBAQCBzdGQ6OnR1cGxlPFN0
cmluZywgUERGU2VsZWN0aW9uICosIE5TRGljdGlvbmFyeSAqPiBQREZQbHVnaW46Omxvb2t1cFRl
eHRBdExvY2F0aQogICAgIE5TUG9pbnQgcG9pbnRJblBhZ2VTcGFjZSA9IFtbbV9wZGZMYXllckNv
bnRyb2xsZXIgbGF5b3V0XSBjb252ZXJ0UG9pbnQ6cG9pbnRJbkxheW91dFNwYWNlIHRvUGFnZTpj
dXJyZW50UGFnZSBmb3JTY2FsZUZhY3RvcjoxLjBdOwogCiAgICAgZm9yIChQREZBbm5vdGF0aW9u
ICphbm5vdGF0aW9uIGluIGN1cnJlbnRQYWdlLmFubm90YXRpb25zKSB7Ci0gICAgICAgIGlmICgh
W2Fubm90YXRpb24gaXNLaW5kT2ZDbGFzczpwZGZBbm5vdGF0aW9uTGlua0NsYXNzKCldKQorICAg
ICAgICBpZiAoIVthbm5vdGF0aW9uIGlzS2luZE9mQ2xhc3M6Z2V0UERGQW5ub3RhdGlvbkxpbmtD
bGFzcygpXSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogCiAgICAgICAgIE5TUmVjdCBib3VuZHMg
PSBhbm5vdGF0aW9uLmJvdW5kczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9QbHVnaW5zL1BERi9QREZQbHVnaW5Bbm5vdGF0aW9uLm1tIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpbkFubm90YXRpb24ubW0KaW5kZXggY2FlZjNlMTkw
MGMyODNjMWIzNjA1Mzk0MTIyOGVlMGU3MTZkNjc0NC4uYzg4NGQ4Y2RiYzIxNDk2YWJiYzFiNGQ5
YzhmZWRjZjJhOTEzMDI3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1Bs
dWdpbnMvUERGL1BERlBsdWdpbkFubm90YXRpb24ubW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpbkFubm90YXRpb24ubW0KQEAgLTI4LDcgKzI4LDcg
QEAKIAogI2lmIEVOQUJMRShQREZLSVRfUExVR0lOKQogCi0jaW1wb3J0ICJQREZLaXRJbXBvcnRz
LmgiCisjaW1wb3J0ICJQREZLaXRTb2Z0TGluay5oIgogI2ltcG9ydCAiUERGTGF5ZXJDb250cm9s
bGVyU1BJLmgiCiAjaW1wb3J0ICJQREZQbHVnaW4uaCIKICNpbXBvcnQgIlBERlBsdWdpbkNob2lj
ZUFubm90YXRpb24uaCIKQEAgLTUzLDkgKzUzLDkgQEAgdXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1l
czsKIAogUmVmUHRyPFBERlBsdWdpbkFubm90YXRpb24+IFBERlBsdWdpbkFubm90YXRpb246OmNy
ZWF0ZShQREZBbm5vdGF0aW9uICphbm5vdGF0aW9uLCBQREZMYXllckNvbnRyb2xsZXIgKnBkZkxh
eWVyQ29udHJvbGxlciwgUERGUGx1Z2luKiBwbHVnaW4pCiB7Ci0gICAgaWYgKFthbm5vdGF0aW9u
IGlzS2luZE9mQ2xhc3M6cGRmQW5ub3RhdGlvblRleHRXaWRnZXRDbGFzcygpXSkKKyAgICBpZiAo
W2Fubm90YXRpb24gaXNLaW5kT2ZDbGFzczpnZXRQREZBbm5vdGF0aW9uVGV4dFdpZGdldENsYXNz
KCldKQogICAgICAgICByZXR1cm4gUERGUGx1Z2luVGV4dEFubm90YXRpb246OmNyZWF0ZShhbm5v
dGF0aW9uLCBwZGZMYXllckNvbnRyb2xsZXIsIHBsdWdpbik7Ci0gICAgaWYgKFthbm5vdGF0aW9u
IGlzS2luZE9mQ2xhc3M6cGRmQW5ub3RhdGlvbkNob2ljZVdpZGdldENsYXNzKCldKQorICAgIGlm
IChbYW5ub3RhdGlvbiBpc0tpbmRPZkNsYXNzOmdldFBERkFubm90YXRpb25DaG9pY2VXaWRnZXRD
bGFzcygpXSkKICAgICAgICAgcmV0dXJuIFBERlBsdWdpbkNob2ljZUFubm90YXRpb246OmNyZWF0
ZShhbm5vdGF0aW9uLCBwZGZMYXllckNvbnRyb2xsZXIsIHBsdWdpbik7CiAKICAgICByZXR1cm4g
bnVsbHB0cjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1BE
Ri9QREZQbHVnaW5DaG9pY2VBbm5vdGF0aW9uLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L1BsdWdpbnMvUERGL1BERlBsdWdpbkNob2ljZUFubm90YXRpb24ubW0KaW5kZXggMjg5NmYwNDU3
NjhhZTQ0Mzc2ZGI4ODI0ZjMwODA2MTI5OWQyYjE1Zi4uN2U5ZGVkOGU5MzhhNDJhOTE0NTBiOGFm
YmViNjZmZjFkM2M2YTVmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1Bs
dWdpbnMvUERGL1BERlBsdWdpbkNob2ljZUFubm90YXRpb24ubW0KKysrIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpbkNob2ljZUFubm90YXRpb24ubW0KQEAg
LTI4LDcgKzI4LDYgQEAKICNpbXBvcnQgImNvbmZpZy5oIgogI2ltcG9ydCAiUERGUGx1Z2luQ2hv
aWNlQW5ub3RhdGlvbi5oIgogCi0jaW1wb3J0ICJQREZLaXRJbXBvcnRzLmgiCiAjaW1wb3J0ICJQ
REZMYXllckNvbnRyb2xsZXJTUEkuaCIKICNpbXBvcnQgPFF1YXJ0ei9RdWFydHouaD4KICNpbXBv
cnQgPFdlYkNvcmUvQ1NTUHJpbWl0aXZlVmFsdWUuaD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1BERi9QREZQbHVnaW5QYXNzd29yZEZpZWxkLm1tIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpblBhc3N3b3JkRmllbGQu
bW0KaW5kZXggNTM2NWI5NzE5NDYxM2FhMjMyZWZlNzQ0YjBiOTkwMWJjNTY5YTBhNC4uZGU3Mzcx
YmU5ZmNkODJiMTAwZDI2ZjE5MWRlMmIzNGU4NmFmZTEzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpblBhc3N3b3JkRmllbGQubW0KKysr
IGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpblBhc3N3b3Jk
RmllbGQubW0KQEAgLTI4LDcgKzI4LDYgQEAKIAogI2lmIEVOQUJMRShQREZLSVRfUExVR0lOKQog
Ci0jaW1wb3J0ICJQREZLaXRJbXBvcnRzLmgiCiAjaW1wb3J0ICJQREZMYXllckNvbnRyb2xsZXJT
UEkuaCIKICNpbXBvcnQgIlBERlBsdWdpbi5oIgogI2ltcG9ydCA8UXVhcnR6L1F1YXJ0ei5oPgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdp
blRleHRBbm5vdGF0aW9uLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvUERG
L1BERlBsdWdpblRleHRBbm5vdGF0aW9uLm1tCmluZGV4IGMzZTA0MTM3NDZhYzIyMmIyZjQ4ZWI1
OGIzODBhZDE0OWVlMzhhNGMuLjc0OTVlMDQzNmM0MDc0M2Y0Y2VkZmJlNmViYzY2MDQ4ZjY5ODU3
NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1BERi9QREZQ
bHVnaW5UZXh0QW5ub3RhdGlvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvUGx1
Z2lucy9QREYvUERGUGx1Z2luVGV4dEFubm90YXRpb24ubW0KQEAgLTI5LDcgKzI5LDYgQEAKICNp
ZiBFTkFCTEUoUERGS0lUX1BMVUdJTikKIAogI2ltcG9ydCAiUERGQW5ub3RhdGlvblRleHRXaWRn
ZXREZXRhaWxzLmgiCi0jaW1wb3J0ICJQREZLaXRJbXBvcnRzLmgiCiAjaW1wb3J0ICJQREZMYXll
ckNvbnRyb2xsZXJTUEkuaCIKICNpbXBvcnQgIlBERlBsdWdpbi5oIgogI2ltcG9ydCA8UXVhcnR6
L1F1YXJ0ei5oPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
bWFjL1dlYlBhZ2VNYWMubW0gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMv
V2ViUGFnZU1hYy5tbQppbmRleCAwYTQ0NDBkZmE1ZjQ3MGE0ZDc2ZThlYzJhNWM5Njc5ZDI4OTM5
M2M2Li43NGRhNjM1Nzg4MmNkMDEzMDIwODQwOTdmMDY0ZDIxYzNiOTE1ZDA0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbQpAQCAt
MzUsNyArMzUsNyBAQAogI2ltcG9ydCAiRm9udEluZm8uaCIKICNpbXBvcnQgIkZyYW1lSW5mb0Rh
dGEuaCIKICNpbXBvcnQgIkluamVjdGVkQnVuZGxlSGl0VGVzdFJlc3VsdC5oIgotI2ltcG9ydCAi
UERGS2l0SW1wb3J0cy5oIgorI2ltcG9ydCAiUERGS2l0U29mdExpbmsuaCIKICNpbXBvcnQgIlBE
RlBsdWdpbi5oIgogI2ltcG9ydCAiUGFnZUJhbm5lci5oIgogI2ltcG9ydCAiUGx1Z2luVmlldy5o
IgpAQCAtMTk5LDcgKzE5OSw3IEBAIE5TT2JqZWN0ICpXZWJQYWdlOjphY2Nlc3NpYmlsaXR5T2Jq
ZWN0Rm9yTWFpbkZyYW1lUGx1Z2luKCkKIGJvb2wgV2ViUGFnZTo6c2hvdWxkVXNlUERGUGx1Z2lu
KGNvbnN0IFN0cmluZyYgY29udGVudFR5cGUsIFN0cmluZ1ZpZXcgcGF0aCkgY29uc3QKIHsKICAg
ICByZXR1cm4gcGRmUGx1Z2luRW5hYmxlZCgpCi0gICAgICAgICYmIGNsYXNzRnJvbVBERktpdChA
IlBERkxheWVyQ29udHJvbGxlciIpCisgICAgICAgICYmIGdldFBERkxheWVyQ29udHJvbGxlckNs
YXNzKCkKICAgICAgICAgJiYgKE1JTUVUeXBlUmVnaXN0cnk6OmlzUERGT3JQb3N0U2NyaXB0TUlN
RVR5cGUoY29udGVudFR5cGUpCiAgICAgICAgICAgICB8fCAoY29udGVudFR5cGUuaXNFbXB0eSgp
CiAgICAgICAgICAgICAgICAgJiYgKHBhdGguZW5kc1dpdGhJZ25vcmluZ0FTQ0lJQ2FzZSgiLnBk
ZiIpIHx8IHBhdGguZW5kc1dpdGhJZ25vcmluZ0FTQ0lJQ2FzZSgiLnBzIikpKSk7CkBAIC03MzMs
NyArNzMzLDcgQEAgc3RhdGljIHZvaWQgZHJhd1BERlBhZ2UoUERGRG9jdW1lbnQgKnBkZkRvY3Vt
ZW50LCBDRkluZGV4IHBhZ2VJbmRleCwgQ0dDb250ZXh0UmUKICAgICBDR0FmZmluZVRyYW5zZm9y
bSB0cmFuc2Zvcm0gPSBDR0NvbnRleHRHZXRDVE0oY29udGV4dCk7CiAKICAgICBmb3IgKFBERkFu
bm90YXRpb24gKmFubm90YXRpb24gaW4gW3BkZlBhZ2UgYW5ub3RhdGlvbnNdKSB7Ci0gICAgICAg
IGlmICghW2Fubm90YXRpb24gaXNLaW5kT2ZDbGFzczpwZGZBbm5vdGF0aW9uTGlua0NsYXNzKCld
KQorICAgICAgICBpZiAoIVthbm5vdGF0aW9uIGlzS2luZE9mQ2xhc3M6Z2V0UERGQW5ub3RhdGlv
bkxpbmtDbGFzcygpXSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogCiAgICAgICAgIEFMTE9XX0RF
UFJFQ0FURURfREVDTEFSQVRJT05TX0JFR0lOCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>422051</attachid>
            <date>2021-03-03 01:08:08 -0800</date>
            <delta_ts>2021-03-03 13:04:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-222643-20210303010807.patch</filename>
            <type>text/plain</type>
            <size>31981</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjczODEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDUyNTJhZWUxMzE4YjI1YTBmMDA3MWI5
NTJmNzFmZDlmY2JkMzAxNDIuLjFiY2U1Njg2MzY1ODgyN2FlODRmYTNkYTg0ZDg2ODUzYjgyZjhk
MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMjEtMDMtMDMgIFRpbSBIb3J0b24gIDx0aW1vdGh5
X2hvcnRvbkBhcHBsZS5jb20+CisKKyAgICAgICAgTW9kZXJuaXplIFdlYktpdDIgUERGS2l0IHNv
ZnRsaW5raW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMjI2NDMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIHd0Zi9QbGF0Zm9ybUhhdmUuaDoKKwogMjAyMS0wMy0wMiAgU2ltb24gRnJhc2VyICA8c2lt
b24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW5hbWUgRm9yY2VQYWdlUmVuZGVyaW5n
VXBkYXRlc0F0NjBGUFNFbmFibGVkIHByZWZlcmVuY2UgdG8gUHJlZmVyUGFnZVJlbmRlcmluZ1Vw
ZGF0ZXNOZWFyNjBGUFNFbmFibGVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDk4YTVkMjQxMjdlOTQxZDljNzQ2YWRi
M2Q1OGY0MWFlNjRjYTI5NjkuLjc2YjhmYjRjZDljNmU4ZDQ1NjlhMjE2MTU3MjA4YTgwZDk2Mzgw
NWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDUgQEAKKzIwMjEtMDMtMDMgIFRpbSBIb3J0b24gIDx0
aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CisKKyAgICAgICAgTW9kZXJuaXplIFdlYktpdDIgUERG
S2l0IHNvZnRsaW5raW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMjI2NDMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBXZWJLaXQyIGhhcyBsb25nIGhhZCBhbiB1bnVzdWFsIHdheSBvZiBzb2Z0bGlua2lu
ZyBQREZLaXQsIHVzaW5nIE5TQnVuZGxlLgorICAgICAgICBJdCBoYXMgY2F1c2VkIG11Y2ggdHJv
dWJsZSBpbiB0aGUgcGFzdCwgYmVjYXVzZSBpdCBtZWFucyB0aGF0IHJ1bm5pbmcKKyAgICAgICAg
V2ViS2l0IGFnYWluc3QgYSBjdXN0b20gUERGS2l0IHJlcXVpcmVzIGVpdGhlciBpbnN0YWxsaW5n
IGl0IGludG8KKyAgICAgICAgdGhlIHN5c3RlbSwgb3IgY2hhbmdpbmcgdGhlIGhhcmRjb2RlZCBw
YXRoLgorCisgICAgICAgIEluc3RlYWQgb2YgdGhpcywganVzdCB1c2UgdGhlIG5vcm1hbCBzb2Z0
bGlua2luZyBtYWNyb3MgdGhhdCB0aGUgcmVzdAorICAgICAgICBvZiBXZWJLaXQgdXNlcy4KKwor
ICAgICAgICAqIFNoYXJlZC9Db2NvYS9QREZLaXRTb2Z0TGluay5oOiBBZGRlZC4KKyAgICAgICAg
KiBTaGFyZWQvQ29jb2EvUERGS2l0U29mdExpbmsubW06IEFkZGVkLgorICAgICAgICAqIFNoYXJl
ZC9tYWMvUERGS2l0SW1wb3J0cy5oOiBSZW1vdmVkLgorICAgICAgICAqIFNoYXJlZC9tYWMvUERG
S2l0SW1wb3J0cy5tbTogUmVtb3ZlZC4KKyAgICAgICAgKiBTb3VyY2VzQ29jb2EudHh0OgorICAg
ICAgICAqIFVJUHJvY2Vzcy9tYWMvV0tQcmludGluZ1ZpZXcubW06CisgICAgICAgICgtW1dLUHJp
bnRpbmdWaWV3IF9kcmF3UERGRG9jdW1lbnQ6cGFnZTphdFBvaW50Ol0pOgorICAgICAgICAoLVtX
S1ByaW50aW5nVmlldyBkcmF3UmVjdDpdKToKKyAgICAgICAgKiBXZWJLaXQueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdp
bi5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9QREYvUERGUGx1Z2luLm1tOgorICAg
ICAgICAoV2ViS2l0OjpQREZQbHVnaW46OlBERlBsdWdpbik6CisgICAgICAgIChXZWJLaXQ6OlBE
RlBsdWdpbjo6cmVjZWl2ZWROb25MaW5lYXJpemVkUERGU2VudGluZWwpOgorICAgICAgICAoV2Vi
S2l0OjpQREZQbHVnaW46OnRocmVhZEVudHJ5KToKKyAgICAgICAgKFdlYktpdDo6UERGUGx1Z2lu
Ojpkb2N1bWVudERhdGFEaWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKFdlYktpdDo6UERGUGx1
Z2luOjpzZXRBY3RpdmVBbm5vdGF0aW9uKToKKyAgICAgICAgKFdlYktpdDo6UERGUGx1Z2luOjpu
ZXh0TWF0Y2hGb3JTdHJpbmcpOgorICAgICAgICAoV2ViS2l0OjogY29uc3QpOgorICAgICAgICAq
IFdlYlByb2Nlc3MvUGx1Z2lucy9QREYvUERGUGx1Z2luQW5ub3RhdGlvbi5tbToKKyAgICAgICAg
KFdlYktpdDo6UERGUGx1Z2luQW5ub3RhdGlvbjo6Y3JlYXRlKToKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpbkNob2ljZUFubm90YXRpb24ubW06CisgICAgICAgICog
V2ViUHJvY2Vzcy9QbHVnaW5zL1BERi9QREZQbHVnaW5QYXNzd29yZEZpZWxkLm1tOgorICAgICAg
ICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9QREYvUERGUGx1Z2luVGV4dEFubm90YXRpb24ubW06Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9XZWJQYWdlTWFjLm1tOgorICAgICAgICAo
V2ViS2l0OjpXZWJQYWdlOjpzaG91bGRVc2VQREZQbHVnaW4gY29uc3QpOgorICAgICAgICAoV2Vi
S2l0OjpkcmF3UERGUGFnZSk6CisKIDIwMjEtMDMtMDIgIE15bGVzIEMuIE1heGZpZWxkICA8bW1h
eGZpZWxkQGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OKHIyNzA2OTEpOiBJdCdzIGlt
cG9zc2libGUgdG8gdXNlIE1vYmlsZUFzc2V0IGZvbnRzIG9uIG1hY09TCmRpZmYgLS1naXQgYS9T
b3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUhhdmUuaCBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtSGF2
ZS5oCmluZGV4IDY2NDRiNGI3ZWZlNzJhZTdmMDVkYjkyZjMxMDY3YTNjOWRhZDllYjkuLmM1NjI3
MjUyMzNlNGMzNWU5YTY3OTlmZWRkYjdiOTUxNzM4ZjVhMDYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
VEYvd3RmL1BsYXRmb3JtSGF2ZS5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtSGF2ZS5o
CkBAIC05MjAsMyArOTIwLDcgQEAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKSAmJiAhUExBVEZP
Uk0oTUFDQ0FUQUxZU1QpCiAjZGVmaW5lIEhBVkVfTlNVUkxfVElUTEUgMQogI2VuZGlmCisKKyNp
ZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKElPUykgfHwgUExBVEZPUk0oTUFDQ0FUQUxZU1Qp
CisjZGVmaW5lIEhBVkVfUERGS0lUIDEKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9TaGFyZWQvQ29jb2EvUERGS2l0U29mdExpbmsuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL0Nv
Y29hL1BERktpdFNvZnRMaW5rLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWQzMTUyNzhhZTBhMzQ2NTZjM2I3NWJj
OGRkNGQ4OTRkMTgzMDAyMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L0NvY29hL1BERktpdFNvZnRMaW5rLmgKQEAgLTAsMCArMSw0NSBAQAorLyoKKyogQ29weXJpZ2h0
IChDKSAyMDIxIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyoKKyogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CisqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworKiBhcmUgbWV0OgorKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIg
bWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyoKKyogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMg
SVMnJworKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywKKyogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorKiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMK
KyogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUgorKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyogSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4KKyogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisqLworCisjcHJhZ21hIG9uY2UKKworI2lmIEhBVkUo
UERGS0lUKQorCisjaW1wb3J0IDxQREZLaXQvUERGS2l0Lmg+CisKKyNpbXBvcnQgPHd0Zi9Tb2Z0
TGlua2luZy5oPgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9IRUFERVIoV2ViS2l0LCBQREZL
aXQpCisKK0FMTE9XX0RFUFJFQ0FURURfREVDTEFSQVRJT05TX0JFR0lOCitTT0ZUX0xJTktfQ0xB
U1NfRk9SX0hFQURFUihXZWJLaXQsIFBERkFubm90YXRpb25MaW5rKQorU09GVF9MSU5LX0NMQVNT
X0ZPUl9IRUFERVIoV2ViS2l0LCBQREZEb2N1bWVudCkKK1NPRlRfTElOS19DTEFTU19GT1JfSEVB
REVSKFdlYktpdCwgUERGTGF5ZXJDb250cm9sbGVyKQorU09GVF9MSU5LX0NMQVNTX0ZPUl9IRUFE
RVIoV2ViS2l0LCBQREZBbm5vdGF0aW9uVGV4dFdpZGdldCkKK1NPRlRfTElOS19DTEFTU19GT1Jf
SEVBREVSKFdlYktpdCwgUERGQW5ub3RhdGlvbkNob2ljZVdpZGdldCkKK1NPRlRfTElOS19DTEFT
U19GT1JfSEVBREVSKFdlYktpdCwgUERGU2VsZWN0aW9uKQorQUxMT1dfREVQUkVDQVRFRF9ERUNM
QVJBVElPTlNfRU5ECisKKyNlbmRpZiAvLyBIQVZFKFBERktJVCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL0NvY29hL1BERktpdFNvZnRMaW5rLm1tIGIvU291cmNlL1dlYktpdC9T
aGFyZWQvQ29jb2EvUERGS2l0U29mdExpbmsubW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDE0YzJlMGM5Y2EwODUz
N2IyMGNmZDUyZWQ4NTgwMTlkMTllNmQ4OAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJL
aXQvU2hhcmVkL0NvY29hL1BERktpdFNvZnRMaW5rLm1tCkBAIC0wLDAgKzEsNDMgQEAKKy8qCisq
IENvcHlyaWdodCAoQykgMjAyMSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisqCisq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyogYXJlIG1ldDoKKyogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
LgorKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisqCisq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycKKyogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyogUFVSUE9T
RSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09O
VFJJQlVUT1JTCisqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCisqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCisqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisqIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YK
KyogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorKi8KKworI2ltcG9ydCAiY29uZmln
LmgiCisKKyNpZiBIQVZFKFBERktJVCkKKworI2ltcG9ydCA8d3RmL1NvZnRMaW5raW5nLmg+CisK
K1NPRlRfTElOS19GUkFNRVdPUktfRk9SX1NPVVJDRShXZWJLaXQsIFBERktpdCkKKworQUxMT1df
REVQUkVDQVRFRF9ERUNMQVJBVElPTlNfQkVHSU4KK1NPRlRfTElOS19DTEFTU19GT1JfU09VUkNF
KFdlYktpdCwgUERGS2l0LCBQREZBbm5vdGF0aW9uTGluaykKK1NPRlRfTElOS19DTEFTU19GT1Jf
U09VUkNFKFdlYktpdCwgUERGS2l0LCBQREZEb2N1bWVudCkKK1NPRlRfTElOS19DTEFTU19GT1Jf
U09VUkNFKFdlYktpdCwgUERGS2l0LCBQREZMYXllckNvbnRyb2xsZXIpCitTT0ZUX0xJTktfQ0xB
U1NfRk9SX1NPVVJDRShXZWJLaXQsIFBERktpdCwgUERGQW5ub3RhdGlvblRleHRXaWRnZXQpCitT
T0ZUX0xJTktfQ0xBU1NfRk9SX1NPVVJDRShXZWJLaXQsIFBERktpdCwgUERGQW5ub3RhdGlvbkNo
b2ljZVdpZGdldCkKK1NPRlRfTElOS19DTEFTU19GT1JfU09VUkNFKFdlYktpdCwgUERGS2l0LCBQ
REZTZWxlY3Rpb24pCitBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFUSU9OU19FTkQKKworI2VuZGlm
IC8vIEhBVkUoUERGS0lUKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL1BE
RktpdEltcG9ydHMuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9QREZLaXRJbXBvcnRzLmgK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM1YWQyOWUxOWRkMDc4ZDM1NjIwZDRiZWRk
MWU5N2FkNzg1MTFkYmQuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL1BERktpdEltcG9ydHMuaAorKysgL2Rldi9u
dWxsCkBAIC0xLDQ5ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgQXBwbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0g
KiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAq
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFBERktpdEltcG9ydHNf
aAotI2RlZmluZSBQREZLaXRJbXBvcnRzX2gKLQotI2lmIFBMQVRGT1JNKE1BQykKLQotbmFtZXNw
YWNlIFdlYktpdCB7Ci0KLU5TU3RyaW5nICpwZGZLaXRGcmFtZXdvcmtQYXRoKCk7Ci1DbGFzcyBj
bGFzc0Zyb21QREZLaXQoTlNTdHJpbmcgKmNsYXNzTmFtZSk7Ci1DbGFzcyBwZGZBbm5vdGF0aW9u
TGlua0NsYXNzKCk7Ci1DbGFzcyBwZGZEb2N1bWVudENsYXNzKCk7Ci0KLSNpZiBFTkFCTEUoUERG
S0lUX1BMVUdJTikKLUNsYXNzIHBkZkxheWVyQ29udHJvbGxlckNsYXNzKCk7Ci1DbGFzcyBwZGZB
bm5vdGF0aW9uVGV4dFdpZGdldENsYXNzKCk7Ci1DbGFzcyBwZGZBbm5vdGF0aW9uQ2hvaWNlV2lk
Z2V0Q2xhc3MoKTsKLUNsYXNzIHBkZlNlbGVjdGlvbkNsYXNzKCk7Ci0jZW5kaWYKLQotfQotCi0j
ZW5kaWYgLy8gUExBVEZPUk0oTUFDKQotCi0jZW5kaWYgLy8gUERGS2l0SW1wb3J0c19oCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9tYWMvUERGS2l0SW1wb3J0cy5tbSBiL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL21hYy9QREZLaXRJbXBvcnRzLm1tCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCBmODNiOGZjNTQyZjI0OWY2NWNmZGU3YmVlNDA4OTlkMjlmMTUyMzJhLi4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJLaXQv
U2hhcmVkL21hYy9QREZLaXRJbXBvcnRzLm1tCisrKyAvZGV2L251bGwKQEAgLTEsOTMgKzAsMCBA
QAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJ
TkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgotICovCi0KLSNpbXBvcnQgImNvbmZpZy5oIgotI2ltcG9ydCAiUERGS2l0SW1wb3J0
cy5oIgotCi0jaWYgUExBVEZPUk0oTUFDKQotCi1uYW1lc3BhY2UgV2ViS2l0IHsKLQotTlNTdHJp
bmcgKnBkZktpdEZyYW1ld29ya1BhdGgoKQotewotICAgIE5TU3RyaW5nICpzeXN0ZW1MaWJyYXJ5
UGF0aCA9IFtOU1NlYXJjaFBhdGhGb3JEaXJlY3Rvcmllc0luRG9tYWlucyhOU0xpYnJhcnlEaXJl
Y3RvcnksIE5TU3lzdGVtRG9tYWluTWFzaywgTk8pIG9iamVjdEF0SW5kZXg6MF07Ci0gICAgcmV0
dXJuIFtzeXN0ZW1MaWJyYXJ5UGF0aCBzdHJpbmdCeUFwcGVuZGluZ1BhdGhDb21wb25lbnQ6QCJG
cmFtZXdvcmtzL1F1YXJ0ei5mcmFtZXdvcmsvRnJhbWV3b3Jrcy9QREZLaXQuZnJhbWV3b3JrIl07
Ci19Ci0KLUNsYXNzIGNsYXNzRnJvbVBERktpdChOU1N0cmluZyAqY2xhc3NOYW1lKQotewotICAg
IHN0YXRpYyBOU0J1bmRsZSAqcGRmS2l0QnVuZGxlID0gW05TQnVuZGxlIGJ1bmRsZVdpdGhQYXRo
OnBkZktpdEZyYW1ld29ya1BhdGgoKV07Ci0gICAgW3BkZktpdEJ1bmRsZSBsb2FkXTsKLSAgICBy
ZXR1cm4gW3BkZktpdEJ1bmRsZSBjbGFzc05hbWVkOmNsYXNzTmFtZV07Ci19Ci0KLUNsYXNzIHBk
ZkFubm90YXRpb25MaW5rQ2xhc3MoKQotewotICAgIHN0YXRpYyBDbGFzcyBwZGZBbm5vdGF0aW9u
TGlua0NsYXNzID0gY2xhc3NGcm9tUERGS2l0KEAiUERGQW5ub3RhdGlvbkxpbmsiKTsKLSAgICBB
U1NFUlQocGRmQW5ub3RhdGlvbkxpbmtDbGFzcyk7Ci0gICAgcmV0dXJuIHBkZkFubm90YXRpb25M
aW5rQ2xhc3M7Ci19Ci0KLUNsYXNzIHBkZkRvY3VtZW50Q2xhc3MoKQotewotICAgIHN0YXRpYyBD
bGFzcyBwZGZEb2N1bWVudENsYXNzID0gY2xhc3NGcm9tUERGS2l0KEAiUERGRG9jdW1lbnQiKTsK
LSAgICBBU1NFUlQocGRmRG9jdW1lbnRDbGFzcyk7Ci0gICAgcmV0dXJuIHBkZkRvY3VtZW50Q2xh
c3M7Ci19Ci0gICAgCi0jaWYgRU5BQkxFKFBERktJVF9QTFVHSU4pCi1DbGFzcyBwZGZMYXllckNv
bnRyb2xsZXJDbGFzcygpCi17Ci0gICAgc3RhdGljIENsYXNzIHBkZkxheWVyQ29udHJvbGxlckNs
YXNzID0gY2xhc3NGcm9tUERGS2l0KEAiUERGTGF5ZXJDb250cm9sbGVyIik7Ci0gICAgQVNTRVJU
KHBkZkxheWVyQ29udHJvbGxlckNsYXNzKTsKLSAgICByZXR1cm4gcGRmTGF5ZXJDb250cm9sbGVy
Q2xhc3M7Ci19Ci0KLUNsYXNzIHBkZkFubm90YXRpb25UZXh0V2lkZ2V0Q2xhc3MoKQotewotICAg
IHN0YXRpYyBDbGFzcyBwZGZBbm5vdGF0aW9uVGV4dFdpZGdldENsYXNzID0gY2xhc3NGcm9tUERG
S2l0KEAiUERGQW5ub3RhdGlvblRleHRXaWRnZXQiKTsKLSAgICBBU1NFUlQocGRmQW5ub3RhdGlv
blRleHRXaWRnZXRDbGFzcyk7Ci0gICAgcmV0dXJuIHBkZkFubm90YXRpb25UZXh0V2lkZ2V0Q2xh
c3M7Ci19Ci0KLUNsYXNzIHBkZkFubm90YXRpb25DaG9pY2VXaWRnZXRDbGFzcygpCi17Ci0gICAg
c3RhdGljIENsYXNzIHBkZkFubm90YXRpb25DaG9pY2VXaWRnZXRDbGFzcyA9IGNsYXNzRnJvbVBE
RktpdChAIlBERkFubm90YXRpb25DaG9pY2VXaWRnZXQiKTsKLSAgICBBU1NFUlQocGRmQW5ub3Rh
dGlvbkNob2ljZVdpZGdldENsYXNzKTsKLSAgICByZXR1cm4gcGRmQW5ub3RhdGlvbkNob2ljZVdp
ZGdldENsYXNzOwotfQotCi1DbGFzcyBwZGZTZWxlY3Rpb25DbGFzcygpCi17Ci0gICAgc3RhdGlj
IENsYXNzIHBkZlNlbGVjdGlvbkNsYXNzID0gY2xhc3NGcm9tUERGS2l0KEAiUERGU2VsZWN0aW9u
Iik7Ci0gICAgQVNTRVJUKHBkZlNlbGVjdGlvbkNsYXNzKTsKLSAgICByZXR1cm4gcGRmU2VsZWN0
aW9uQ2xhc3M7Ci19Ci0KLSNlbmRpZgotCi19Ci0KLSNlbmRpZiAvLyBQTEFURk9STShNQUMpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1NvdXJjZXNDb2NvYS50eHQgYi9Tb3VyY2UvV2ViS2l0
L1NvdXJjZXNDb2NvYS50eHQKaW5kZXggYzY1NDNjODczZGJlYmMzZGM2ZDE2ZDkwNzRhZjVlMmQz
N2QxNzFkNS4uYTU5ZGM2Y2EyZDNmNDkyYTg3ZDljZTJlOTJiMDgwNWEyZWQ3ZTdmMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9Tb3VyY2VzQ29jb2EudHh0CisrKyBiL1NvdXJjZS9XZWJLaXQv
U291cmNlc0NvY29hLnR4dApAQCAtMTU5LDYgKzE1OSw3IEBAIFNoYXJlZC9Db2NvYS9Db3JlVGV4
dEhlbHBlcnMubW0KIFNoYXJlZC9Db2NvYS9EYXRhRGV0ZWN0aW9uUmVzdWx0Lm1tCiBTaGFyZWQv
Q29jb2EvSW5zZXJ0VGV4dE9wdGlvbnMuY3BwCiBTaGFyZWQvQ29jb2EvTG9hZFBhcmFtZXRlcnND
b2NvYS5tbQorU2hhcmVkL0NvY29hL1BERktpdFNvZnRMaW5rLm1tCiBTaGFyZWQvQ29jb2EvU2Fu
ZGJveEV4dGVuc2lvbkNvY29hLm1tCiBTaGFyZWQvQ29jb2EvU2FuZGJveEluaXRpYWxpYXRpb25Q
YXJhbWV0ZXJzQ29jb2EubW0KIFNoYXJlZC9Db2NvYS9TYW5kYm94VXRpbGl0aWVzLm1tCkBAIC0y
MDQsNyArMjA1LDYgQEAgU2hhcmVkL21hYy9OYXRpdmVXZWJNb3VzZUV2ZW50TWFjLm1tCiBTaGFy
ZWQvbWFjL05hdGl2ZVdlYldoZWVsRXZlbnRNYWMubW0KIFNoYXJlZC9tYWMvT2JqQ09iamVjdEdy
YXBoLm1tCiBTaGFyZWQvbWFjL1Bhc3RlYm9hcmRUeXBlcy5tbQotU2hhcmVkL21hYy9QREZLaXRJ
bXBvcnRzLm1tCiBTaGFyZWQvbWFjL1ByaW50SW5mb01hYy5tbQogU2hhcmVkL21hYy9TZWNJdGVt
UmVxdWVzdERhdGEuY3BwCiBTaGFyZWQvbWFjL1NlY0l0ZW1SZXNwb25zZURhdGEuY3BwCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV0tQcmludGluZ1ZpZXcubW0gYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV0tQcmludGluZ1ZpZXcubW0KaW5kZXggOGNhMDE0
YzE0NTBiYzRmOTA5YjNhZDcwOTQxMzM2MDhhMjRiMmU0OS4uMDU1YzYwMWZlN2ZkODU3ZTkzMzE1
MjQzNzkzNjY5MGM0MWMxY2M3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
bWFjL1dLUHJpbnRpbmdWaWV3Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9X
S1ByaW50aW5nVmlldy5tbQpAQCAtMzAsNyArMzAsNyBAQAogCiAjaW1wb3J0ICJBUElEYXRhLmgi
CiAjaW1wb3J0ICJMb2dnaW5nLmgiCi0jaW1wb3J0ICJQREZLaXRJbXBvcnRzLmgiCisjaW1wb3J0
ICJQREZLaXRTb2Z0TGluay5oIgogI2ltcG9ydCAiUHJpbnRJbmZvLmgiCiAjaW1wb3J0ICJTaGFy
ZWFibGVCaXRtYXAuaCIKICNpbXBvcnQgIldlYlBhZ2VQcm94eS5oIgpAQCAtNDg2LDcgKzQ4Niw3
IEBAIC0gKHZvaWQpX2RyYXdQREZEb2N1bWVudDooUERGRG9jdW1lbnQgKilwZGZEb2N1bWVudCBw
YWdlOih1bnNpZ25lZClwYWdlIGF0UG9pbnQ6CiAgICAgfQogCiAgICAgZm9yIChQREZBbm5vdGF0
aW9uICphbm5vdGF0aW9uIGluIFtwZGZQYWdlIGFubm90YXRpb25zXSkgewotICAgICAgICBpZiAo
IVthbm5vdGF0aW9uIGlzS2luZE9mQ2xhc3M6V2ViS2l0OjpwZGZBbm5vdGF0aW9uTGlua0NsYXNz
KCldKQorICAgICAgICBpZiAoIVthbm5vdGF0aW9uIGlzS2luZE9mQ2xhc3M6V2ViS2l0OjpnZXRQ
REZBbm5vdGF0aW9uTGlua0NsYXNzKCldKQogICAgICAgICAgICAgY29udGludWU7CiAKICAgICAg
ICAgQUxMT1dfREVQUkVDQVRFRF9ERUNMQVJBVElPTlNfQkVHSU4KQEAgLTU4NCw3ICs1ODQsNyBA
QCAtICh2b2lkKWRyYXdSZWN0OihOU1JlY3QpbnNSZWN0CiAKICAgICBpZiAoIV9wcmludGVkUGFn
ZXNQREZEb2N1bWVudCkgewogICAgICAgICBSZXRhaW5QdHI8TlNEYXRhPiBwZGZEYXRhID0gYWRv
cHROUyhbW05TRGF0YSBhbGxvY10gaW5pdFdpdGhCeXRlczpfcHJpbnRlZFBhZ2VzRGF0YS5kYXRh
KCkgbGVuZ3RoOl9wcmludGVkUGFnZXNEYXRhLnNpemUoKV0pOwotICAgICAgICBfcHJpbnRlZFBh
Z2VzUERGRG9jdW1lbnQgPSBhZG9wdE5TKFtbV2ViS2l0OjpwZGZEb2N1bWVudENsYXNzKCkgYWxs
b2NdIGluaXRXaXRoRGF0YTpwZGZEYXRhLmdldCgpXSk7CisgICAgICAgIF9wcmludGVkUGFnZXNQ
REZEb2N1bWVudCA9IGFkb3B0TlMoW1dlYktpdDo6YWxsb2NQREZEb2N1bWVudEluc3RhbmNlKCkg
aW5pdFdpdGhEYXRhOnBkZkRhdGEuZ2V0KCldKTsKIAogICAgICAgICB1bnNpZ25lZCBwYWdlQ291
bnQgPSBbX3ByaW50ZWRQYWdlc1BERkRvY3VtZW50IHBhZ2VDb3VudF07CiAgICAgICAgIF9saW5r
RGVzdGluYXRpb25zUGVyUGFnZS5jbGVhcigpOwpAQCAtNTkyLDcgKzU5Miw3IEBAIC0gKHZvaWQp
ZHJhd1JlY3Q6KE5TUmVjdCluc1JlY3QKICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8
IHBhZ2VDb3VudDsgaSsrKSB7CiAgICAgICAgICAgICBQREZQYWdlICpwYWdlID0gW19wcmludGVk
UGFnZXNQREZEb2N1bWVudCBwYWdlQXRJbmRleDppXTsKICAgICAgICAgICAgIGZvciAoUERGQW5u
b3RhdGlvbiAqYW5ub3RhdGlvbiBpbiBwYWdlLmFubm90YXRpb25zKSB7Ci0gICAgICAgICAgICAg
ICAgaWYgKCFbYW5ub3RhdGlvbiBpc0tpbmRPZkNsYXNzOldlYktpdDo6cGRmQW5ub3RhdGlvbkxp
bmtDbGFzcygpXSkKKyAgICAgICAgICAgICAgICBpZiAoIVthbm5vdGF0aW9uIGlzS2luZE9mQ2xh
c3M6V2ViS2l0OjpnZXRQREZBbm5vdGF0aW9uTGlua0NsYXNzKCldKQogICAgICAgICAgICAgICAg
ICAgICBjb250aW51ZTsKIAogICAgICAgICAgICAgICAgIEFMTE9XX0RFUFJFQ0FURURfREVDTEFS
QVRJT05TX0JFR0lOCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagppbmRleCBjNDlhYzFlYTlmYWRmODI1NDI2NmQ5NDE5ZWM4N2VlNTdiY2QwY2VjLi5j
Zjc1ZDMwZWI5NWYwNmIwMjFkYmIwZjk0NzY4YzY1MDMzZGU4NzY1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9X
ZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE5NTAsNyArMTk1MCw2
IEBACiAJCUUxOEU2OTBDMTY5QjU2M0YwMDlCNjY3MCAvKiBTZWNJdGVtU2hpbVByb3h5LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMThFNjkwQTE2OUI1
NjNGMDA5QjY2NzAgLyogU2VjSXRlbVNoaW1Qcm94eS5oICovOyB9OwogCQlFMThFNjkxNzE2OUI2
NjdCMDA5QjY2NzAgLyogU2VjSXRlbVNoaW1Qcm94eU1lc3NhZ2VSZWNlaXZlci5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMThFNjkxMzE2OUI2NjdC
MDA5QjY2NzAgLyogU2VjSXRlbVNoaW1Qcm94eU1lc3NhZ2VSZWNlaXZlci5jcHAgKi87IH07CiAJ
CUUxOEU2OTE4MTY5QjY2N0IwMDlCNjY3MCAvKiBTZWNJdGVtU2hpbVByb3h5TWVzc2FnZXMuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxOEU2OTE0MTY5
QjY2N0IwMDlCNjY3MCAvKiBTZWNJdGVtU2hpbVByb3h5TWVzc2FnZXMuaCAqLzsgfTsKLQkJRTE5
NTgyRDMxNTNDQkZENzAwQjYwODc1IC8qIFBERktpdEltcG9ydHMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxOTU4MkQyMTUzQ0JGRDcwMEI2MDg3NSAv
KiBQREZLaXRJbXBvcnRzLmggKi87IH07CiAJCUUxOUJEQTg2MTkzNjY1RTMwMEI5N0Y1NyAvKiBj
b20uYXBwbGUuYXBwc3RvcmUuQ29kZVJlZGVlbWVyTmV0c2NhcGVQbHVnaW4uc2IgaW4gQ29weSBQ
bHVnLWluIFNhbmRib3ggUHJvZmlsZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRTE5QkRBODQxOTM2NUY0QjAwQjk3RjU3IC8qIGNvbS5hcHBsZS5hcHBzdG9yZS5Db2RlUmVk
ZWVtZXJOZXRzY2FwZVBsdWdpbi5zYiAqLzsgfTsKIAkJRTFBRUEyMkYxNDY4N0JEQjAwODA0NTY5
IC8qIFdLRnVsbEtleWJvYXJkQWNjZXNzV2F0Y2hlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTFBRUEyMkQxNDY4N0JEQjAwODA0NTY5IC8qIFdLRnVs
bEtleWJvYXJkQWNjZXNzV2F0Y2hlci5oICovOyB9OwogCQlFMUI3ODQ3MTE2M0YyNDY5MDAwN0I2
OTIgLyogUmVtb3RlTmV0d29ya2luZ0NvbnRleHQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxQjc4NDcwMTYzRjI0NjkwMDA3QjY5MiAvKiBSZW1vdGVO
ZXR3b3JraW5nQ29udGV4dC5oICovOyB9OwpAQCAtMzE0MSw2ICszMTQwLDggQEAKIAkJMkQzRUY0
NDExOTE3NjQ2MzAwMDM0MTg0IC8qIFdlYk1lbW9yeVByZXNzdXJlSGFuZGxlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJNZW1vcnlQcmVzc3VyZUhhbmRsZXIuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMkQ0MjlCRkExNzIxRTJCQTAwRUM2ODFGIC8qIFBE
RlBsdWdpblBhc3N3b3JkRmllbGQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0g
UERGUGx1Z2luUGFzc3dvcmRGaWVsZC5oOyBwYXRoID0gUERGL1BERlBsdWdpblBhc3N3b3JkRmll
bGQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMkQ0MjlCRkIxNzIxRTJCQTAwRUM2
ODFGIC8qIFBERlBsdWdpblBhc3N3b3JkRmllbGQubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5vYmpjcHA7IG5hbWUgPSBQREZQbHVnaW5QYXNzd29yZEZpZWxkLm1tOyBwYXRoID0gUERGL1BE
RlBsdWdpblBhc3N3b3JkRmllbGQubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTJE
NDQwQjgyMjVFRjIzNUUwMEE5OEQ4NyAvKiBQREZLaXRTb2Z0TGluay5tbSAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNw
cDsgcGF0aCA9IFBERktpdFNvZnRMaW5rLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkyRDQ0MEI4MzI1RUYyMzVFMDBBOThEODcgLyogUERGS2l0U29mdExpbmsuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gUERGS2l0U29mdExpbmsuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMkQ0
N0I1NkExODEwNzE0RTAwM0EzQUVFIC8qIFJlbW90ZUxheWVyQmFja2luZ1N0b3JlLm1tICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUmVtb3RlTGF5ZXJCYWNraW5nU3Rv
cmUubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTJENDdCNTZCMTgxMDcxNEUwMDNB
M0FFRSAvKiBSZW1vdGVMYXllckJhY2tpbmdTdG9yZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBSZW1vdGVMYXllckJhY2tpbmdTdG9yZS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQkyRDRBRjA4ODIwNDRDM0M0MDA2Qzg4MTcgLyogRnJvbnRCb2FyZFNlcnZpY2Vz
U1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZyb250Qm9hcmRTZXJ2aWNl
c1NQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNTc4Miw4ICs1NzgzLDYgQEAK
IAkJRTE4RTY5MTQxNjlCNjY3QjAwOUI2NjcwIC8qIFNlY0l0ZW1TaGltUHJveHlNZXNzYWdlcy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBTZWNJdGVtU2hpbVByb3h5TWVzc2Fn
ZXMuaDsgcGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYktpdDIvU2VjSXRlbVNoaW1Qcm94eU1lc3Nh
Z2VzLmg7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CiAJCUUxOEU2OTQ3MTY5
Qjc3QzgwMDlCNjY3MCAvKiBTZWNJdGVtU2hpbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBTZWNJdGVtU2hpbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUUxOEU2OTQ4MTY5Qjc3QzgwMDlCNjY3MCAvKiBTZWNJdGVtU2hpbS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBTZWNJdGVtU2hpbS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwotCQlFMTk1ODJEMjE1M0NCRkQ3MDBCNjA4NzUgLyogUERGS2l0SW1wb3J0cy5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQREZLaXRJbXBvcnRzLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUUxOTU4MkQ0MTUzQ0MwNTMwMEI2MDg3NSAvKiBQREZLaXRJ
bXBvcnRzLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gUERGS2l0
SW1wb3J0cy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTE5NjdFMzcxNTBBQjVF
MjAwQzczMTY5IC8qIGNvbS5hcHBsZS5XZWJQcm9jZXNzLnNiICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgbmFt
ZSA9IGNvbS5hcHBsZS5XZWJQcm9jZXNzLnNiOyBwYXRoID0gRGVyaXZlZFNvdXJjZXMvV2ViS2l0
Mi9jb20uYXBwbGUuV2ViUHJvY2Vzcy5zYjsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJ
UjsgfTsKIAkJRTE5QkRBODQxOTM2NUY0QjAwQjk3RjU3IC8qIGNvbS5hcHBsZS5hcHBzdG9yZS5D
b2RlUmVkZWVtZXJOZXRzY2FwZVBsdWdpbi5zYiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBjb20u
YXBwbGUuYXBwc3RvcmUuQ29kZVJlZGVlbWVyTmV0c2NhcGVQbHVnaW4uc2I7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUUxOUJEQTg4MTkzNjg2QTQwMEI5N0Y1NyAvKiBTYW5kYm94VXRp
bGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNhbmRib3hVdGlsaXRp
ZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTgxNDYsNiArODE0NSw4IEBACiAJ
CQkJQ0U1NTBFMTIyMjgzNzNDODAwRDI4NzkxIC8qIEluc2VydFRleHRPcHRpb25zLmggKi8sCiAJ
CQkJQzE2NjNFNUEyNEFFQTc0MjAwQzZBM0IyIC8qIExhdW5jaFNlcnZpY2VzRGF0YWJhc2VYUEND
b25zdGFudHMuaCAqLywKIAkJCQkyRDEwODc2MjFEMkM2NDFCMDBCODVGODIgLyogTG9hZFBhcmFt
ZXRlcnNDb2NvYS5tbSAqLywKKwkJCQkyRDQ0MEI4MzI1RUYyMzVFMDBBOThEODcgLyogUERGS2l0
U29mdExpbmsuaCAqLywKKwkJCQkyRDQ0MEI4MjI1RUYyMzVFMDBBOThEODcgLyogUERGS2l0U29m
dExpbmsubW0gKi8sCiAJCQkJN0FCNEVBM0YyMjc3N0M0NjAwODVCQkFBIC8qIFNhbmRib3hFeHRl
bnNpb25Db2NvYS5tbSAqLywKIAkJCQk3QUI0RUE0MTIyNzc3RkM3MDA4NUJCQUEgLyogU2FuZGJv
eEluaXRpYWxpYXRpb25QYXJhbWV0ZXJzQ29jb2EubW0gKi8sCiAJCQkJRTE5QkRBODgxOTM2ODZB
NDAwQjk3RjU3IC8qIFNhbmRib3hVdGlsaXRpZXMuaCAqLywKQEAgLTEwMjg4LDggKzEwMjg5LDYg
QEAKIAkJCQlDNTc0QTU3RjEyRTY2NjgxMDAyREZFOTggLyogUGFzdGVib2FyZFR5cGVzLmggKi8s
CiAJCQkJQzU3NEE1ODAxMkU2NjY4MTAwMkRGRTk4IC8qIFBhc3RlYm9hcmRUeXBlcy5tbSAqLywK
IAkJCQlDMUUxMjNCOTIwQTExNTcyMDAyNjQ2RjQgLyogUERGQ29udGV4dE1lbnUuaCAqLywKLQkJ
CQlFMTk1ODJEMjE1M0NCRkQ3MDBCNjA4NzUgLyogUERGS2l0SW1wb3J0cy5oICovLAotCQkJCUUx
OTU4MkQ0MTUzQ0MwNTMwMEI2MDg3NSAvKiBQREZLaXRJbXBvcnRzLm1tICovLAogCQkJCUUxQ0Mx
QjhGMTJEN0VBREYwMDYyNTgzOCAvKiBQcmludEluZm9NYWMubW0gKi8sCiAJCQkJNTFEMTMwNEYx
MzgyRUFDMDAwMzUxRUREIC8qIFNlY0l0ZW1SZXF1ZXN0RGF0YS5jcHAgKi8sCiAJCQkJNTFEMTMw
NTAxMzgyRUFDMDAwMzUxRUREIC8qIFNlY0l0ZW1SZXF1ZXN0RGF0YS5oICovLApAQCAtMTE5NjMs
NyArMTE5NjIsNiBAQAogCQkJCUExNzk4QjNFMjIyRDk3QTIwMDA3NjRCRCAvKiBQYXltZW50QXV0
aG9yaXphdGlvblByZXNlbnRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTE3OThCNDMyMjJEOThE
RjAwMDc2NEJEIC8qIFBheW1lbnRBdXRob3JpemF0aW9uVmlld0NvbnRyb2xsZXIuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUMxRTEyM0JBMjBBMTE1NzMwMDI2NDZGNCAvKiBQREZDb250ZXh0TWVudS5o
IGluIEhlYWRlcnMgKi8sCi0JCQkJRTE5NTgyRDMxNTNDQkZENzAwQjYwODc1IC8qIFBERktpdElt
cG9ydHMuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDMjk4REEwMUMzREYwMjEwMDQ3MEFGRSAvKiBQ
ZW5kaW5nRG93bmxvYWQuaCBpbiBIZWFkZXJzICovLAogCQkJCTgzMkVEMThDMUUyRkUxNTcwMDZC
QTY0QSAvKiBQZXJBY3Rpdml0eVN0YXRlQ1BVVXNhZ2VTYW1wbGVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQk3QUZCRDM2RjIxRTU0NkY4MDA1REJBQ0IgLyogUGVyc2lzdGVuY3lVdGlscy5oIGluIEhl
YWRlcnMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvUGx1Z2lucy9Q
REYvUERGUGx1Z2luLmggYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvUGx1Z2lucy9QREYvUERG
UGx1Z2luLmgKaW5kZXggZjA3Yjc4ZWVlODhkYjQwMWVjMDc5MjcyNzk0ZmE1NmFlZjJjNTUyNi4u
YjVlNmU1MThiZDVmOTAwZWMwZTFkOTQ0ZmViNTc0ODI5NzMzOTA2NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpbi5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1BERi9QREZQbHVnaW4uaApAQCAtMjgsNyArMjgs
NiBAQAogI2lmIEVOQUJMRShQREZLSVRfUExVR0lOKQogCiAjaW5jbHVkZSAiRGF0YVJlZmVyZW5j
ZS5oIgotI2luY2x1ZGUgIlBERktpdEltcG9ydHMuaCIKICNpbmNsdWRlICJQREZQbHVnaW5JZGVu
dGlmaWVyLmgiCiAjaW5jbHVkZSAiUGx1Z2luLmgiCiAjaW5jbHVkZSAiV2ViRXZlbnQuaCIKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1BERi9QREZQbHVnaW4u
bW0gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvUGx1Z2lucy9QREYvUERGUGx1Z2luLm1tCmlu
ZGV4IDg1MmE4MDg1MThlMmQ4NzA2ZDYzYzU1MzE3NWQ3YzdmM2M2YzdhYjcuLjZiYTBmNTVmMTI0
MWZhMDc3NTBlYTRlMTQ4MDAzOWJkMTk2Nzk2ZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9QbHVnaW5zL1BERi9QREZQbHVnaW4ubW0KKysrIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpbi5tbQpAQCAtMzQsNiArMzQsNyBAQAogI2lt
cG9ydCAiTG9nZ2luZy5oIgogI2ltcG9ydCAiUERGQW5ub3RhdGlvblRleHRXaWRnZXREZXRhaWxz
LmgiCiAjaW1wb3J0ICJQREZDb250ZXh0TWVudS5oIgorI2ltcG9ydCAiUERGS2l0U29mdExpbmsu
aCIKICNpbXBvcnQgIlBERkxheWVyQ29udHJvbGxlclNQSS5oIgogI2ltcG9ydCAiUERGUGx1Z2lu
QW5ub3RhdGlvbi5oIgogI2ltcG9ydCAiUERGUGx1Z2luUGFzc3dvcmRGaWVsZC5oIgpAQCAtNTk2
LDcgKzU5Nyw3IEBAIGlubGluZSBQREZQbHVnaW46OlBERlBsdWdpbihXZWJGcmFtZSYgZnJhbWUp
CiAgICAgLCBtX2NvbnRhaW5lckxheWVyKGFkb3B0TlMoW1tDQUxheWVyIGFsbG9jXSBpbml0XSkp
CiAgICAgLCBtX2NvbnRlbnRMYXllcihhZG9wdE5TKFtbQ0FMYXllciBhbGxvY10gaW5pdF0pKQog
ICAgICwgbV9zY3JvbGxDb3JuZXJMYXllcihhZG9wdE5TKFtbV0tQREZQbHVnaW5TY3JvbGxiYXJM
YXllciBhbGxvY10gaW5pdFdpdGhQREZQbHVnaW46dGhpc10pKQotICAgICwgbV9wZGZMYXllckNv
bnRyb2xsZXIoYWRvcHROUyhbW3BkZkxheWVyQ29udHJvbGxlckNsYXNzKCkgYWxsb2NdIGluaXRd
KSkKKyAgICAsIG1fcGRmTGF5ZXJDb250cm9sbGVyKGFkb3B0TlMoW2FsbG9jUERGTGF5ZXJDb250
cm9sbGVySW5zdGFuY2UoKSBpbml0XSkpCiAgICAgLCBtX3BkZkxheWVyQ29udHJvbGxlckRlbGVn
YXRlKGFkb3B0TlMoW1tXS1BERkxheWVyQ29udHJvbGxlckRlbGVnYXRlIGFsbG9jXSBpbml0V2l0
aFBERlBsdWdpbjp0aGlzXSkpCiAjaWYgSEFWRShJTkNSRU1FTlRBTF9QREZfQVBJUykKICAgICAs
IG1fc3RyZWFtTG9hZGVyQ2xpZW50KGFkb3B0UmVmKCpuZXcgUERGUGx1Z2luU3RyZWFtTG9hZGVy
Q2xpZW50KCp0aGlzKSkpCkBAIC03MzgsNyArNzM5LDcgQEAgdm9pZCBQREZQbHVnaW46OnJlY2Vp
dmVkTm9uTGluZWFyaXplZFBERlNlbnRpbmVsKCkKICAgICBpZiAoIW1fZG9jdW1lbnRGaW5pc2hl
ZExvYWRpbmcgfHwgbV9wZGZEb2N1bWVudCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9wZGZE
b2N1bWVudCA9IGFkb3B0TlMoW1twZGZEb2N1bWVudENsYXNzKCkgYWxsb2NdIGluaXRXaXRoRGF0
YTpyYXdEYXRhKCldKTsKKyAgICBtX3BkZkRvY3VtZW50ID0gYWRvcHROUyhbYWxsb2NQREZEb2N1
bWVudEluc3RhbmNlKCkgaW5pdFdpdGhEYXRhOnJhd0RhdGEoKV0pOwogICAgIGluc3RhbGxQREZE
b2N1bWVudCgpOwogICAgIHRyeVJ1blNjcmlwdHNJblBERkRvY3VtZW50KCk7CiB9CkBAIC04Nzgs
NyArODc5LDcgQEAgdm9pZCBQREZQbHVnaW46OnRocmVhZEVudHJ5KFJlZjxQREZQbHVnaW4+JiYg
cHJvdGVjdGVkUGx1Z2luKQogCiAgICAgUmV0YWluUHRyPENHRGF0YVByb3ZpZGVyUmVmPiBkYXRh
UHJvdmlkZXIgPSBhZG9wdENGKENHRGF0YVByb3ZpZGVyQ3JlYXRlTXVsdGlSYW5nZURpcmVjdEFj
Y2Vzcyh0aGlzLCBrQ0dEYXRhUHJvdmlkZXJJbmRldGVybWluYXRlU2l6ZSwgJmRhdGFQcm92aWRl
ckNhbGxiYWNrcykpOwogICAgIENHRGF0YVByb3ZpZGVyU2V0UHJvcGVydHkoZGF0YVByb3ZpZGVy
LmdldCgpLCBrQ0dEYXRhUHJvdmlkZXJIYXNIaWdoTGF0ZW5jeSwga0NGQm9vbGVhblRydWUpOwot
ICAgIG1fYmFja2dyb3VuZFRocmVhZERvY3VtZW50ID0gYWRvcHROUyhbW3BkZkRvY3VtZW50Q2xh
c3MoKSBhbGxvY10gaW5pdFdpdGhQcm92aWRlcjpkYXRhUHJvdmlkZXIuZ2V0KCldKTsKKyAgICBt
X2JhY2tncm91bmRUaHJlYWREb2N1bWVudCA9IGFkb3B0TlMoW2FsbG9jUERGRG9jdW1lbnRJbnN0
YW5jZSgpIGluaXRXaXRoUHJvdmlkZXI6ZGF0YVByb3ZpZGVyLmdldCgpXSk7CiAKICAgICAvLyBb
UERGRG9jdW1lbnQgaW5pdFdpdGhQcm92aWRlcjpdIHdpbGwgcmV0dXJuIG5pbCBpbiBjYXNlcyB3
aGVyZSB0aGUgUERGIGlzIG5vbi1saW5lYXJpemVkLgogICAgIC8vIEluIHRob3NlIGNhc2VzIHdl
J2xsIGp1c3Qga2VlcCBidWZmZXJpbmcgdGhlIGVudGlyZSBQREYgb24gdGhlIG1haW4gdGhyZWFk
LgpAQCAtMTU5OSw3ICsxNjAwLDcgQEAgdm9pZCBQREZQbHVnaW46OmRvY3VtZW50RGF0YURpZEZp
bmlzaExvYWRpbmcoKQogICAgIH0gZWxzZQogI2VuZGlmCiAgICAgewotICAgICAgICBtX3BkZkRv
Y3VtZW50ID0gYWRvcHROUyhbW3BkZkRvY3VtZW50Q2xhc3MoKSBhbGxvY10gaW5pdFdpdGhEYXRh
OnJhd0RhdGEoKV0pOworICAgICAgICBtX3BkZkRvY3VtZW50ID0gYWRvcHROUyhbYWxsb2NQREZE
b2N1bWVudEluc3RhbmNlKCkgaW5pdFdpdGhEYXRhOnJhd0RhdGEoKV0pOwogICAgICAgICBpbnN0
YWxsUERGRG9jdW1lbnQoKTsKICAgICB9CiAKQEAgLTI0NjQsNyArMjQ2NSw3IEBAIHZvaWQgUERG
UGx1Z2luOjpzZXRBY3RpdmVBbm5vdGF0aW9uKFBERkFubm90YXRpb24gKmFubm90YXRpb24pCiAK
ICAgICBpZiAoYW5ub3RhdGlvbikgewogICAgICAgICBBTExPV19ERVBSRUNBVEVEX0RFQ0xBUkFU
SU9OU19CRUdJTgotICAgICAgICBpZiAoW2Fubm90YXRpb24gaXNLaW5kT2ZDbGFzczpwZGZBbm5v
dGF0aW9uVGV4dFdpZGdldENsYXNzKCldICYmIHN0YXRpY19jYXN0PFBERkFubm90YXRpb25UZXh0
V2lkZ2V0ICo+KGFubm90YXRpb24pLmlzUmVhZE9ubHkpIHsKKyAgICAgICAgaWYgKFthbm5vdGF0
aW9uIGlzS2luZE9mQ2xhc3M6Z2V0UERGQW5ub3RhdGlvblRleHRXaWRnZXRDbGFzcygpXSAmJiBz
dGF0aWNfY2FzdDxQREZBbm5vdGF0aW9uVGV4dFdpZGdldCAqPihhbm5vdGF0aW9uKS5pc1JlYWRP
bmx5KSB7CiAgICAgICAgICAgICBtX2FjdGl2ZUFubm90YXRpb24gPSBudWxscHRyOwogICAgICAg
ICAgICAgcmV0dXJuOwogICAgICAgICB9CkBAIC0yNjkwLDcgKzI2OTEsNyBAQCBQREZTZWxlY3Rp
b24gKlBERlBsdWdpbjo6bmV4dE1hdGNoRm9yU3RyaW5nKGNvbnN0IFN0cmluZyYgdGFyZ2V0LCBC
T09MIHNlYXJjaEZvcgogICAgICAgICBmb3VuZFNlbGVjdGlvbiA9IFttX3BkZkRvY3VtZW50IGZp
bmRTdHJpbmc6dGFyZ2V0IGZyb21TZWxlY3Rpb246aW5pdGlhbFNlbGVjdGlvbiB3aXRoT3B0aW9u
czpvcHRpb25zXTsKIAogICAgIGlmICghZm91bmRTZWxlY3Rpb24gJiYgd3JhcFNlYXJjaCkgewot
ICAgICAgICBhdXRvIGVtcHR5U2VsZWN0aW9uID0gYWRvcHROUyhbW3BkZlNlbGVjdGlvbkNsYXNz
KCkgYWxsb2NdIGluaXRXaXRoRG9jdW1lbnQ6bV9wZGZEb2N1bWVudC5nZXQoKV0pOworICAgICAg
ICBhdXRvIGVtcHR5U2VsZWN0aW9uID0gYWRvcHROUyhbYWxsb2NQREZTZWxlY3Rpb25JbnN0YW5j
ZSgpIGluaXRXaXRoRG9jdW1lbnQ6bV9wZGZEb2N1bWVudC5nZXQoKV0pOwogICAgICAgICBmb3Vu
ZFNlbGVjdGlvbiA9IFttX3BkZkRvY3VtZW50IGZpbmRTdHJpbmc6dGFyZ2V0IGZyb21TZWxlY3Rp
b246ZW1wdHlTZWxlY3Rpb24uZ2V0KCkgd2l0aE9wdGlvbnM6b3B0aW9uc107CiAgICAgfQogCkBA
IC0yODUwLDcgKzI4NTEsNyBAQCBzdGQ6OnR1cGxlPFN0cmluZywgUERGU2VsZWN0aW9uICosIE5T
RGljdGlvbmFyeSAqPiBQREZQbHVnaW46Omxvb2t1cFRleHRBdExvY2F0aQogICAgIE5TUG9pbnQg
cG9pbnRJblBhZ2VTcGFjZSA9IFtbbV9wZGZMYXllckNvbnRyb2xsZXIgbGF5b3V0XSBjb252ZXJ0
UG9pbnQ6cG9pbnRJbkxheW91dFNwYWNlIHRvUGFnZTpjdXJyZW50UGFnZSBmb3JTY2FsZUZhY3Rv
cjoxLjBdOwogCiAgICAgZm9yIChQREZBbm5vdGF0aW9uICphbm5vdGF0aW9uIGluIGN1cnJlbnRQ
YWdlLmFubm90YXRpb25zKSB7Ci0gICAgICAgIGlmICghW2Fubm90YXRpb24gaXNLaW5kT2ZDbGFz
czpwZGZBbm5vdGF0aW9uTGlua0NsYXNzKCldKQorICAgICAgICBpZiAoIVthbm5vdGF0aW9uIGlz
S2luZE9mQ2xhc3M6Z2V0UERGQW5ub3RhdGlvbkxpbmtDbGFzcygpXSkKICAgICAgICAgICAgIGNv
bnRpbnVlOwogCiAgICAgICAgIE5TUmVjdCBib3VuZHMgPSBhbm5vdGF0aW9uLmJvdW5kczsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1BERi9QREZQbHVnaW5B
bm5vdGF0aW9uLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBs
dWdpbkFubm90YXRpb24ubW0KaW5kZXggY2FlZjNlMTkwMGMyODNjMWIzNjA1Mzk0MTIyOGVlMGU3
MTZkNjc0NC4uYzg4NGQ4Y2RiYzIxNDk2YWJiYzFiNGQ5YzhmZWRjZjJhOTEzMDI3ZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpbkFubm90
YXRpb24ubW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBs
dWdpbkFubm90YXRpb24ubW0KQEAgLTI4LDcgKzI4LDcgQEAKIAogI2lmIEVOQUJMRShQREZLSVRf
UExVR0lOKQogCi0jaW1wb3J0ICJQREZLaXRJbXBvcnRzLmgiCisjaW1wb3J0ICJQREZLaXRTb2Z0
TGluay5oIgogI2ltcG9ydCAiUERGTGF5ZXJDb250cm9sbGVyU1BJLmgiCiAjaW1wb3J0ICJQREZQ
bHVnaW4uaCIKICNpbXBvcnQgIlBERlBsdWdpbkNob2ljZUFubm90YXRpb24uaCIKQEAgLTUzLDkg
KzUzLDkgQEAgdXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKIAogUmVmUHRyPFBERlBsdWdpbkFu
bm90YXRpb24+IFBERlBsdWdpbkFubm90YXRpb246OmNyZWF0ZShQREZBbm5vdGF0aW9uICphbm5v
dGF0aW9uLCBQREZMYXllckNvbnRyb2xsZXIgKnBkZkxheWVyQ29udHJvbGxlciwgUERGUGx1Z2lu
KiBwbHVnaW4pCiB7Ci0gICAgaWYgKFthbm5vdGF0aW9uIGlzS2luZE9mQ2xhc3M6cGRmQW5ub3Rh
dGlvblRleHRXaWRnZXRDbGFzcygpXSkKKyAgICBpZiAoW2Fubm90YXRpb24gaXNLaW5kT2ZDbGFz
czpnZXRQREZBbm5vdGF0aW9uVGV4dFdpZGdldENsYXNzKCldKQogICAgICAgICByZXR1cm4gUERG
UGx1Z2luVGV4dEFubm90YXRpb246OmNyZWF0ZShhbm5vdGF0aW9uLCBwZGZMYXllckNvbnRyb2xs
ZXIsIHBsdWdpbik7Ci0gICAgaWYgKFthbm5vdGF0aW9uIGlzS2luZE9mQ2xhc3M6cGRmQW5ub3Rh
dGlvbkNob2ljZVdpZGdldENsYXNzKCldKQorICAgIGlmIChbYW5ub3RhdGlvbiBpc0tpbmRPZkNs
YXNzOmdldFBERkFubm90YXRpb25DaG9pY2VXaWRnZXRDbGFzcygpXSkKICAgICAgICAgcmV0dXJu
IFBERlBsdWdpbkNob2ljZUFubm90YXRpb246OmNyZWF0ZShhbm5vdGF0aW9uLCBwZGZMYXllckNv
bnRyb2xsZXIsIHBsdWdpbik7CiAKICAgICByZXR1cm4gbnVsbHB0cjsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1BERi9QREZQbHVnaW5DaG9pY2VBbm5vdGF0
aW9uLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpbkNo
b2ljZUFubm90YXRpb24ubW0KaW5kZXggMjg5NmYwNDU3NjhhZTQ0Mzc2ZGI4ODI0ZjMwODA2MTI5
OWQyYjE1Zi4uN2U5ZGVkOGU5MzhhNDJhOTE0NTBiOGFmYmViNjZmZjFkM2M2YTVmZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpbkNob2lj
ZUFubm90YXRpb24ubW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvUERG
L1BERlBsdWdpbkNob2ljZUFubm90YXRpb24ubW0KQEAgLTI4LDcgKzI4LDYgQEAKICNpbXBvcnQg
ImNvbmZpZy5oIgogI2ltcG9ydCAiUERGUGx1Z2luQ2hvaWNlQW5ub3RhdGlvbi5oIgogCi0jaW1w
b3J0ICJQREZLaXRJbXBvcnRzLmgiCiAjaW1wb3J0ICJQREZMYXllckNvbnRyb2xsZXJTUEkuaCIK
ICNpbXBvcnQgPFF1YXJ0ei9RdWFydHouaD4KICNpbXBvcnQgPFdlYkNvcmUvQ1NTUHJpbWl0aXZl
VmFsdWUuaD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1BE
Ri9QREZQbHVnaW5QYXNzd29yZEZpZWxkLm1tIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1Bs
dWdpbnMvUERGL1BERlBsdWdpblBhc3N3b3JkRmllbGQubW0KaW5kZXggNTM2NWI5NzE5NDYxM2Fh
MjMyZWZlNzQ0YjBiOTkwMWJjNTY5YTBhNC4uZGU3MzcxYmU5ZmNkODJiMTAwZDI2ZjE5MWRlMmIz
NGU4NmFmZTEzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMv
UERGL1BERlBsdWdpblBhc3N3b3JkRmllbGQubW0KKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9j
ZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpblBhc3N3b3JkRmllbGQubW0KQEAgLTI4LDcgKzI4LDYg
QEAKIAogI2lmIEVOQUJMRShQREZLSVRfUExVR0lOKQogCi0jaW1wb3J0ICJQREZLaXRJbXBvcnRz
LmgiCiAjaW1wb3J0ICJQREZMYXllckNvbnRyb2xsZXJTUEkuaCIKICNpbXBvcnQgIlBERlBsdWdp
bi5oIgogI2ltcG9ydCA8UXVhcnR6L1F1YXJ0ei5oPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpblRleHRBbm5vdGF0aW9uLm1tIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL1BERlBsdWdpblRleHRBbm5vdGF0aW9u
Lm1tCmluZGV4IGMzZTA0MTM3NDZhYzIyMmIyZjQ4ZWI1OGIzODBhZDE0OWVlMzhhNGMuLjc0OTVl
MDQzNmM0MDc0M2Y0Y2VkZmJlNmViYzY2MDQ4ZjY5ODU3NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1BERi9QREZQbHVnaW5UZXh0QW5ub3RhdGlvbi5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvUGx1Z2lucy9QREYvUERGUGx1Z2luVGV4dEFu
bm90YXRpb24ubW0KQEAgLTI5LDcgKzI5LDYgQEAKICNpZiBFTkFCTEUoUERGS0lUX1BMVUdJTikK
IAogI2ltcG9ydCAiUERGQW5ub3RhdGlvblRleHRXaWRnZXREZXRhaWxzLmgiCi0jaW1wb3J0ICJQ
REZLaXRJbXBvcnRzLmgiCiAjaW1wb3J0ICJQREZMYXllckNvbnRyb2xsZXJTUEkuaCIKICNpbXBv
cnQgIlBERlBsdWdpbi5oIgogI2ltcG9ydCA8UXVhcnR6L1F1YXJ0ei5oPgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1dlYlBhZ2VNYWMubW0gYi9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbQppbmRleCAwYTQ0
NDBkZmE1ZjQ3MGE0ZDc2ZThlYzJhNWM5Njc5ZDI4OTM5M2M2Li43NGRhNjM1Nzg4MmNkMDEzMDIw
ODQwOTdmMDY0ZDIxYzNiOTE1ZDA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViUGFnZS9tYWMvV2ViUGFnZU1hYy5tbQpAQCAtMzUsNyArMzUsNyBAQAogI2ltcG9ydCAi
Rm9udEluZm8uaCIKICNpbXBvcnQgIkZyYW1lSW5mb0RhdGEuaCIKICNpbXBvcnQgIkluamVjdGVk
QnVuZGxlSGl0VGVzdFJlc3VsdC5oIgotI2ltcG9ydCAiUERGS2l0SW1wb3J0cy5oIgorI2ltcG9y
dCAiUERGS2l0U29mdExpbmsuaCIKICNpbXBvcnQgIlBERlBsdWdpbi5oIgogI2ltcG9ydCAiUGFn
ZUJhbm5lci5oIgogI2ltcG9ydCAiUGx1Z2luVmlldy5oIgpAQCAtMTk5LDcgKzE5OSw3IEBAIE5T
T2JqZWN0ICpXZWJQYWdlOjphY2Nlc3NpYmlsaXR5T2JqZWN0Rm9yTWFpbkZyYW1lUGx1Z2luKCkK
IGJvb2wgV2ViUGFnZTo6c2hvdWxkVXNlUERGUGx1Z2luKGNvbnN0IFN0cmluZyYgY29udGVudFR5
cGUsIFN0cmluZ1ZpZXcgcGF0aCkgY29uc3QKIHsKICAgICByZXR1cm4gcGRmUGx1Z2luRW5hYmxl
ZCgpCi0gICAgICAgICYmIGNsYXNzRnJvbVBERktpdChAIlBERkxheWVyQ29udHJvbGxlciIpCisg
ICAgICAgICYmIGdldFBERkxheWVyQ29udHJvbGxlckNsYXNzKCkKICAgICAgICAgJiYgKE1JTUVU
eXBlUmVnaXN0cnk6OmlzUERGT3JQb3N0U2NyaXB0TUlNRVR5cGUoY29udGVudFR5cGUpCiAgICAg
ICAgICAgICB8fCAoY29udGVudFR5cGUuaXNFbXB0eSgpCiAgICAgICAgICAgICAgICAgJiYgKHBh
dGguZW5kc1dpdGhJZ25vcmluZ0FTQ0lJQ2FzZSgiLnBkZiIpIHx8IHBhdGguZW5kc1dpdGhJZ25v
cmluZ0FTQ0lJQ2FzZSgiLnBzIikpKSk7CkBAIC03MzMsNyArNzMzLDcgQEAgc3RhdGljIHZvaWQg
ZHJhd1BERlBhZ2UoUERGRG9jdW1lbnQgKnBkZkRvY3VtZW50LCBDRkluZGV4IHBhZ2VJbmRleCwg
Q0dDb250ZXh0UmUKICAgICBDR0FmZmluZVRyYW5zZm9ybSB0cmFuc2Zvcm0gPSBDR0NvbnRleHRH
ZXRDVE0oY29udGV4dCk7CiAKICAgICBmb3IgKFBERkFubm90YXRpb24gKmFubm90YXRpb24gaW4g
W3BkZlBhZ2UgYW5ub3RhdGlvbnNdKSB7Ci0gICAgICAgIGlmICghW2Fubm90YXRpb24gaXNLaW5k
T2ZDbGFzczpwZGZBbm5vdGF0aW9uTGlua0NsYXNzKCldKQorICAgICAgICBpZiAoIVthbm5vdGF0
aW9uIGlzS2luZE9mQ2xhc3M6Z2V0UERGQW5ub3RhdGlvbkxpbmtDbGFzcygpXSkKICAgICAgICAg
ICAgIGNvbnRpbnVlOwogCiAgICAgICAgIEFMTE9XX0RFUFJFQ0FURURfREVDTEFSQVRJT05TX0JF
R0lOCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>