<?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>229801</bug_id>
          
          <creation_ts>2021-09-02 05:27:00 -0700</creation_ts>
          <short_desc>Categorize WebRTC TCP nw connections like done for WebRTC UDP nw connections</short_desc>
          <delta_ts>2021-09-09 05:17:20 -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>WebRTC</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="youenn fablet">youennf</reporter>
          <assigned_to name="youenn fablet">youennf</assigned_to>
          <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1789674</commentid>
    <comment_count>0</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-09-02 05:27:00 -0700</bug_when>
    <thetext>Categorize WebRTC TCP nw connections like done for WebRTC UDP nw connections</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1789682</commentid>
    <comment_count>1</comment_count>
      <attachid>437141</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-09-02 06:00:02 -0700</bug_when>
    <thetext>Created attachment 437141
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1790925</commentid>
    <comment_count>2</comment_count>
      <attachid>437478</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-09-07 03:22:14 -0700</bug_when>
    <thetext>Created attachment 437478
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1791022</commentid>
    <comment_count>3</comment_count>
      <attachid>437508</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-09-07 08:23:32 -0700</bug_when>
    <thetext>Created attachment 437508
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1791785</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-09-09 00:03:10 -0700</bug_when>
    <thetext>ChangeLog entry in Source/WebKit/ChangeLog is not at the top of the file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1791791</commentid>
    <comment_count>5</comment_count>
      <attachid>437715</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2021-09-09 00:11:49 -0700</bug_when>
    <thetext>Created attachment 437715
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1791860</commentid>
    <comment_count>6</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-09-09 05:16:11 -0700</bug_when>
    <thetext>Committed r282210 (241497@main): &lt;https://commits.webkit.org/241497@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 437715.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1791862</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-09-09 05:17:20 -0700</bug_when>
    <thetext>&lt;rdar://problem/82920363&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>437141</attachid>
            <date>2021-09-02 06:00:02 -0700</date>
            <delta_ts>2021-09-07 03:22:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-229801-20210902150000.patch</filename>
            <type>text/plain</type>
            <size>24533</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgxNTc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDZkOTRiZjIwZmE5ZmJkZDVh
ZjBhM2Q2Yjk1ZWFjMjQ2ZDgxMTlkMDEuLjIwZWQ0MTE1N2Q3NmIyNjQyNWJkYzU3NWZjZDRlOGQ2
ZjA4ODAxMzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzYgQEAKKzIwMjEtMDktMDIgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIENhdGVnb3JpemUgV2ViUlRDIFRD
UCBudyBjb25uZWN0aW9ucyBsaWtlIGRvbmUgZm9yIFdlYlJUQyBVRFAgbncgY29ubmVjdGlvbnMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyOTgwMQor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE1vdmUgTmV0
d29ya1JUQ1VEUFNvY2tldENvY29hIHRyYWNrZXIgcmVsYXRlZCBjb2RlIHRvIGl0cyBvd24gcm91
dGluZSBpbiBOZXR3b3JrUlRDVXRpbGl0aWVzQ29jb2EuCisgICAgICAgIE1ha2UgdXNlIG9mIHRo
YXQgcm91dGluZSBpbiBOZXR3b3JrUlRDVENQU29ja2V0Q29jb2EuCisgICAgICAgIFRvIGRvIHNv
LCB3ZSBuZWVkIHRvIHBhc3MgbW9yZSBpbmZvcm1hdGlvbiB3aGVuIGNyZWF0aW5nIGEgY2xpZW50
IFRDUCBzb2NrZXQgZnJvbSBXZWJQcm9jZXNzIHRvIE5ldHdvcmtQcm9jZXNzLgorICAgICAgICBN
YW51YWxseSB0ZXN0ZWQuCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29y
a1JUQ1Byb3ZpZGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1JUQ1Byb3ZpZGVyOjpj
cmVhdGVDbGllbnRUQ1BTb2NrZXQpOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9O
ZXR3b3JrUlRDUHJvdmlkZXIuaDoKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0
d29ya1JUQ1Byb3ZpZGVyLm1lc3NhZ2VzLmluOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3dl
YnJ0Yy9OZXR3b3JrUlRDVENQU29ja2V0Q29jb2EuaDoKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vz
cy93ZWJydGMvTmV0d29ya1JUQ1RDUFNvY2tldENvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpO
ZXR3b3JrUlRDVENQU29ja2V0Q29jb2E6OmNyZWF0ZUNsaWVudFRDUFNvY2tldCk6CisgICAgICAg
IChXZWJLaXQ6Ok5ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYTo6TmV0d29ya1JUQ1RDUFNvY2tldENv
Y29hKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1VEUFNvY2tl
dENvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUlRDVURQU29ja2V0Q29jb2FDb25u
ZWN0aW9uczo6Y29uZmlndXJlUGFyYW1ldGVycyk6CisgICAgICAgIChXZWJLaXQ6OmlzS25vd25U
cmFja2VyKTogRGVsZXRlZC4KKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29y
a1JUQ1V0aWxpdGllc0NvY29hLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05l
dHdvcmtSVENVdGlsaXRpZXNDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6c2V0TldQYXJhbWV0
ZXJzVHJhY2tlck9wdGlvbnMpOgorICAgICAgICAoV2ViS2l0Ojppc0tub3duVHJhY2tlcik6Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9MaWJXZWJSVENQcm92aWRlci5jcHA6
CisgICAgICAgIChXZWJLaXQ6OlJUQ1NvY2tldEZhY3Rvcnk6OkNyZWF0ZUNsaWVudFRjcFNvY2tl
dCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9MaWJXZWJSVENTb2NrZXRG
YWN0b3J5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6TGliV2ViUlRDU29ja2V0RmFjdG9yeTo6Y3Jl
YXRlQ2xpZW50VGNwU29ja2V0KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvd2VicnRj
L0xpYldlYlJUQ1NvY2tldEZhY3RvcnkuaDoKKwogMjAyMS0wOS0wMiAgWW91ZW5uIEZhYmxldCAg
PHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgRW5hYmxlIFdlYlJUQyByZWxheSBmb3IgU2Fm
YXJpVmlld0NvbnRyb2xsZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJvdmlkZXIuY3BwCmluZGV4IGI0MTJmZmZjOTNmZWZk
ZWJiZWFjMDlhNWRmNzY5YzI0YmMxMWNiNTkuLjM0MTk0N2EzYjg4NThiNjZmNGYzNjQzNGRlNGI3
NDg1ZWNmMGYwYTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2Vi
cnRjL05ldHdvcmtSVENQcm92aWRlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJv
Y2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVyLmNwcApAQCAtMjAyLDEzICsyMDIsMTMgQEAg
cnRjOjpQcm94eUluZm8gTmV0d29ya1JUQ1Byb3ZpZGVyOjpwcm94eUluZm9Gcm9tU2Vzc2lvbihj
b25zdCBSVENOZXR3b3JrOjpTb2NrZXQKIH0KICNlbmRpZgogCi12b2lkIE5ldHdvcmtSVENQcm92
aWRlcjo6Y3JlYXRlQ2xpZW50VENQU29ja2V0KExpYldlYlJUQ1NvY2tldElkZW50aWZpZXIgaWRl
bnRpZmllciwgY29uc3QgUlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyYgbG9jYWxBZGRyZXNzLCBj
b25zdCBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzJiByZW1vdGVBZGRyZXNzLCBTdHJpbmcmJiB1
c2VyQWdlbnQsIGludCBvcHRpb25zLCBXZWJQYWdlUHJveHlJZGVudGlmaWVyIHBhZ2VJZGVudGlm
aWVyLCBib29sIGlzUmVsYXlEaXNhYmxlZCkKK3ZvaWQgTmV0d29ya1JUQ1Byb3ZpZGVyOjpjcmVh
dGVDbGllbnRUQ1BTb2NrZXQoTGliV2ViUlRDU29ja2V0SWRlbnRpZmllciBpZGVudGlmaWVyLCBj
b25zdCBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzJiBsb2NhbEFkZHJlc3MsIGNvbnN0IFJUQ05l
dHdvcms6OlNvY2tldEFkZHJlc3MmIHJlbW90ZUFkZHJlc3MsIFN0cmluZyYmIHVzZXJBZ2VudCwg
aW50IG9wdGlvbnMsIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZUlkZW50aWZpZXIsIGJvb2wg
aXNGaXJzdFBhcnR5LCBib29sIGlzUmVsYXlEaXNhYmxlZCwgV2ViQ29yZTo6UmVnaXN0cmFibGVE
b21haW4mJiBkb21haW4pCiB7CiAgICAgQVNTRVJUKG1fcnRjTmV0d29ya1RocmVhZC5Jc0N1cnJl
bnQoKSk7CiAKICNpZiBQTEFURk9STShDT0NPQSkKICAgICBpZiAobV9wbGF0Zm9ybVRDUFNvY2tl
dHNFbmFibGVkKSB7Ci0gICAgICAgIGlmIChhdXRvIHNvY2tldCA9IE5ldHdvcmtSVENUQ1BTb2Nr
ZXRDb2NvYTo6Y3JlYXRlQ2xpZW50VENQU29ja2V0KGlkZW50aWZpZXIsICp0aGlzLCByZW1vdGVB
ZGRyZXNzLnZhbHVlLCBvcHRpb25zLCBhdHRyaWJ1dGVkQnVuZGxlSWRlbnRpZmllckZyb21QYWdl
SWRlbnRpZmllcihwYWdlSWRlbnRpZmllciksIGlzUmVsYXlEaXNhYmxlZCwgbV9pcGNDb25uZWN0
aW9uLmNvcHlSZWYoKSkpIHsKKyAgICAgICAgaWYgKGF1dG8gc29ja2V0ID0gTmV0d29ya1JUQ1RD
UFNvY2tldENvY29hOjpjcmVhdGVDbGllbnRUQ1BTb2NrZXQoaWRlbnRpZmllciwgKnRoaXMsIHJl
bW90ZUFkZHJlc3MudmFsdWUsIG9wdGlvbnMsIGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyRnJv
bVBhZ2VJZGVudGlmaWVyKHBhZ2VJZGVudGlmaWVyKSwgaXNGaXJzdFBhcnR5LCBpc1JlbGF5RGlz
YWJsZWQsIGRvbWFpbiwgbV9pcGNDb25uZWN0aW9uLmNvcHlSZWYoKSkpIHsKICAgICAgICAgICAg
IGFkZFNvY2tldChpZGVudGlmaWVyLCBXVEZNb3ZlKHNvY2tldCkpOwogICAgICAgICAgICAgcmV0
dXJuOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L3dlYnJ0Yy9OZXR3b3JrUlRDUHJvdmlkZXIuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5oCmluZGV4IGViMDdiZTE5OTM2NjdkNTk1NjAy
NjlhNWU2MTc4MTJiYmFkY2Y0NDkuLjA5YTIwNTY5N2Q3M2RhODc0YzRhYzkxMTI0NjFkMmFkZjE2
NGRhMjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05l
dHdvcmtSVENQcm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2Vi
cnRjL05ldHdvcmtSVENQcm92aWRlci5oCkBAIC0xMTYsNyArMTE2LDcgQEAgcHJpdmF0ZToKICAg
ICB2b2lkIHN0YXJ0TGlzdGVuaW5nRm9ySVBDKCk7CiAKICAgICB2b2lkIGNyZWF0ZVVEUFNvY2tl
dChXZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyLCBjb25zdCBSVENOZXR3b3JrOjpT
b2NrZXRBZGRyZXNzJiwgdWludDE2X3QsIHVpbnQxNl90LCBXZWJQYWdlUHJveHlJZGVudGlmaWVy
LCBib29sIGlzRmlyc3RQYXJ0eSwgYm9vbCBpc1JlbGF5RGlzYWJsZWQsIFdlYkNvcmU6OlJlZ2lz
dHJhYmxlRG9tYWluJiYpOwotICAgIHZvaWQgY3JlYXRlQ2xpZW50VENQU29ja2V0KFdlYkNvcmU6
OkxpYldlYlJUQ1NvY2tldElkZW50aWZpZXIsIGNvbnN0IFJUQ05ldHdvcms6OlNvY2tldEFkZHJl
c3MmLCBjb25zdCBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzJiwgU3RyaW5nJiYgdXNlckFnZW50
LCBpbnQsIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIsIGJvb2wgaXNSZWxheURpc2FibGVkKTsKKyAg
ICB2b2lkIGNyZWF0ZUNsaWVudFRDUFNvY2tldChXZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVu
dGlmaWVyLCBjb25zdCBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzJiwgY29uc3QgUlRDTmV0d29y
azo6U29ja2V0QWRkcmVzcyYsIFN0cmluZyYmIHVzZXJBZ2VudCwgaW50LCBXZWJQYWdlUHJveHlJ
ZGVudGlmaWVyLCBib29sIGlzRmlyc3RQYXJ0eSwgYm9vbCBpc1JlbGF5RGlzYWJsZWQsIFdlYkNv
cmU6OlJlZ2lzdHJhYmxlRG9tYWluJiYpOwogICAgIHZvaWQgY3JlYXRlU2VydmVyVENQU29ja2V0
KFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tldElkZW50aWZpZXIsIGNvbnN0IFJUQ05ldHdvcms6OlNv
Y2tldEFkZHJlc3MmLCB1aW50MTZfdCBtaW5Qb3J0LCB1aW50MTZfdCBtYXhQb3J0LCBpbnQpOwog
ICAgIHZvaWQgd3JhcE5ld1RDUENvbm5lY3Rpb24oV2ViQ29yZTo6TGliV2ViUlRDU29ja2V0SWRl
bnRpZmllciBpZGVudGlmaWVyLCBXZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyIG5l
d0Nvbm5lY3Rpb25Tb2NrZXRJZGVudGlmaWVyKTsKICAgICB2b2lkIHNlbmRUb1NvY2tldChXZWJD
b3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyLCBjb25zdCBJUEM6OkRhdGFSZWZlcmVuY2Um
LCBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzJiYsIFJUQ1BhY2tldE9wdGlvbnMmJik7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJv
dmlkZXIubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9O
ZXR3b3JrUlRDUHJvdmlkZXIubWVzc2FnZXMuaW4KaW5kZXggYzJkOGIyOWJkZmE3YmYxMzFiOTJi
Y2E4ZmZhODI2YjRlZDQ5ZjMzZS4uNjgyMGVmMzg0NDU3NjJkMTNhOWUwNmFlOTRkNzA3MmU4MTk2
ZDNkNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0
d29ya1JUQ1Byb3ZpZGVyLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5tZXNzYWdlcy5pbgpAQCAtMjUsNyArMjUs
NyBAQAogbWVzc2FnZXMgLT4gTmV0d29ya1JUQ1Byb3ZpZGVyIHsKICAgICBDcmVhdGVVRFBTb2Nr
ZXQoV2ViQ29yZTo6TGliV2ViUlRDU29ja2V0SWRlbnRpZmllciBpZGVudGlmaWVyLCBXZWJLaXQ6
OlJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MgbG9jYWxBZGRyZXNzLCB1aW50MTZfdCBtaW5Qb3J0
LCB1aW50MTZfdCBtYXhQb3J0LCBXZWJLaXQ6OldlYlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZUlk
ZW50aWZpZXIsIGJvb2wgaXNGaXJzdFBhcnR5LCBib29sIGlzUmVsYXlEaXNhYmxlZCwgV2ViQ29y
ZTo6UmVnaXN0cmFibGVEb21haW4gZG9tYWluKQogICAgIENyZWF0ZVNlcnZlclRDUFNvY2tldChX
ZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYktpdDo6UlRD
TmV0d29yazo6U29ja2V0QWRkcmVzcyBsb2NhbEFkZHJlc3MsIHVpbnQxNl90IG1pblBvcnQsIHVp
bnQxNl90IG1heFBvcnQsIGludCBvcHRpb25zKQotICAgIENyZWF0ZUNsaWVudFRDUFNvY2tldChX
ZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYktpdDo6UlRD
TmV0d29yazo6U29ja2V0QWRkcmVzcyBsb2NhbEFkZHJlc3MsIFdlYktpdDo6UlRDTmV0d29yazo6
U29ja2V0QWRkcmVzcyByZW1vdGVBZGRyZXNzLCBTdHJpbmcgdXNlckFnZW50LCBpbnQgb3B0aW9u
cywgV2ViS2l0OjpXZWJQYWdlUHJveHlJZGVudGlmaWVyIHBhZ2VJZGVudGlmaWVyLCBib29sIGlz
UmVsYXlEaXNhYmxlZCkKKyAgICBDcmVhdGVDbGllbnRUQ1BTb2NrZXQoV2ViQ29yZTo6TGliV2Vi
UlRDU29ja2V0SWRlbnRpZmllciBpZGVudGlmaWVyLCBXZWJLaXQ6OlJUQ05ldHdvcms6OlNvY2tl
dEFkZHJlc3MgbG9jYWxBZGRyZXNzLCBXZWJLaXQ6OlJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3Mg
cmVtb3RlQWRkcmVzcywgU3RyaW5nIHVzZXJBZ2VudCwgaW50IG9wdGlvbnMsIFdlYktpdDo6V2Vi
UGFnZVByb3h5SWRlbnRpZmllciBwYWdlSWRlbnRpZmllciwgYm9vbCBpc0ZpcnN0UGFydHksIGJv
b2wgaXNSZWxheURpc2FibGVkLCBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiBkb21haW4pCiAg
ICAgV3JhcE5ld1RDUENvbm5lY3Rpb24oV2ViQ29yZTo6TGliV2ViUlRDU29ja2V0SWRlbnRpZmll
ciBpZGVudGlmaWVyLCBXZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyIG5ld0Nvbm5l
Y3Rpb25Tb2NrZXRJZGVudGlmaWVyKQogCiAgICAgdm9pZCBTZXRQbGF0Zm9ybVRDUFNvY2tldHNF
bmFibGVkKGJvb2wgZW5hYmxlZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvd2VicnRjL05ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYS5oIGIvU291cmNlL1dlYktpdC9O
ZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1RDUFNvY2tldENvY29hLmgKaW5kZXggMmUy
OTFlMTA1YjE5ZGIzNWNjZmIwMGYzN2NlZGY5NWNkMmQ5OTg4Ni4uM2RjZmFlNDNkOWY3NGQ1MGM2
NzY4MGQ1MmIwZGRhOGRlMjYyZDNmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1RDUFNvY2tldENvY29hLmgKKysrIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1RDUFNvY2tldENvY29hLmgKQEAg
LTM5LDkgKzM5LDkgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiBjbGFzcyBOZXR3b3JrUlRDVENQU29j
a2V0Q29jb2EgZmluYWwgOiBwdWJsaWMgTmV0d29ya1JUQ1Byb3ZpZGVyOjpTb2NrZXQgewogICAg
IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgotICAgIHN0YXRpYyBzdGQ6OnVuaXF1
ZV9wdHI8TmV0d29ya1JUQ1Byb3ZpZGVyOjpTb2NrZXQ+IGNyZWF0ZUNsaWVudFRDUFNvY2tldChX
ZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyLCBOZXR3b3JrUlRDUHJvdmlkZXImLCBj
b25zdCBydGM6OlNvY2tldEFkZHJlc3MmLCBpbnQgb3B0aW9ucywgY29uc3QgU3RyaW5nJiBhdHRy
aWJ1dGVkQnVuZGxlSWRlbnRpZmllciwgYm9vbCBpc1JlbGF5RGlzYWJsZWQsIFJlZjxJUEM6OkNv
bm5lY3Rpb24+JiYpOworICAgIHN0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8TmV0d29ya1JUQ1Byb3Zp
ZGVyOjpTb2NrZXQ+IGNyZWF0ZUNsaWVudFRDUFNvY2tldChXZWJDb3JlOjpMaWJXZWJSVENTb2Nr
ZXRJZGVudGlmaWVyLCBOZXR3b3JrUlRDUHJvdmlkZXImLCBjb25zdCBydGM6OlNvY2tldEFkZHJl
c3MmLCBpbnQgb3B0aW9ucywgY29uc3QgU3RyaW5nJiBhdHRyaWJ1dGVkQnVuZGxlSWRlbnRpZmll
ciwgYm9vbCBpc0ZpcnN0UGFydHksIGJvb2wgaXNSZWxheURpc2FibGVkLCBjb25zdCBXZWJDb3Jl
OjpSZWdpc3RyYWJsZURvbWFpbiYsIFJlZjxJUEM6OkNvbm5lY3Rpb24+JiYpOwogCi0gICAgTmV0
d29ya1JUQ1RDUFNvY2tldENvY29hKFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tldElkZW50aWZpZXIs
IE5ldHdvcmtSVENQcm92aWRlciYsIGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYsIGludCBvcHRp
b25zLCBjb25zdCBTdHJpbmcmIGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyLCBib29sIGlzUmVs
YXlEaXNhYmxlZCwgUmVmPElQQzo6Q29ubmVjdGlvbj4mJik7CisgICAgTmV0d29ya1JUQ1RDUFNv
Y2tldENvY29hKFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tldElkZW50aWZpZXIsIE5ldHdvcmtSVENQ
cm92aWRlciYsIGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYsIGludCBvcHRpb25zLCBjb25zdCBT
dHJpbmcmIGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyLCBib29sIGlzRmlyc3RQYXJ0eSwgYm9v
bCBpc1JlbGF5RGlzYWJsZWQsIGNvbnN0IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJiwgUmVm
PElQQzo6Q29ubmVjdGlvbj4mJik7CiAKIHByaXZhdGU6CiAgICAgLy8gTmV0d29ya1JUQ1Byb3Zp
ZGVyOjpTb2NrZXQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dl
YnJ0Yy9OZXR3b3JrUlRDVENQU29ja2V0Q29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVENQU29ja2V0Q29jb2EubW0KaW5kZXggNTc2NDg2MDhj
OWYyYTk3NDY0NzE3NzM1Y2I1MDkwZGE5N2M1MjliYy4uOTA4MjE2ZjA0ZTg3MTgxM2Q0NTE5ZGQ1
ZDc5NzRlYmQ5NTBiNjg2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy93ZWJydGMvTmV0d29ya1JUQ1RDUFNvY2tldENvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYS5tbQpAQCAtNTEs
MTIgKzUxLDEyIEBAIHN0YXRpYyBkaXNwYXRjaF9xdWV1ZV90IHRjcFNvY2tldFF1ZXVlKCkKICAg
ICByZXR1cm4gcXVldWU7CiB9CiAKLXN0ZDo6dW5pcXVlX3B0cjxOZXR3b3JrUlRDUHJvdmlkZXI6
OlNvY2tldD4gTmV0d29ya1JUQ1RDUFNvY2tldENvY29hOjpjcmVhdGVDbGllbnRUQ1BTb2NrZXQo
TGliV2ViUlRDU29ja2V0SWRlbnRpZmllciBpZGVudGlmaWVyLCBOZXR3b3JrUlRDUHJvdmlkZXIm
IHJ0Y1Byb3ZpZGVyLCBjb25zdCBydGM6OlNvY2tldEFkZHJlc3MmIHJlbW90ZUFkZHJlc3MsIGlu
dCB0Y3BPcHRpb25zLCBjb25zdCBTdHJpbmcmIGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyLCBi
b29sIGlzUmVsYXlEaXNhYmxlZCwgUmVmPElQQzo6Q29ubmVjdGlvbj4mJiBjb25uZWN0aW9uKQor
c3RkOjp1bmlxdWVfcHRyPE5ldHdvcmtSVENQcm92aWRlcjo6U29ja2V0PiBOZXR3b3JrUlRDVENQ
U29ja2V0Q29jb2E6OmNyZWF0ZUNsaWVudFRDUFNvY2tldChMaWJXZWJSVENTb2NrZXRJZGVudGlm
aWVyIGlkZW50aWZpZXIsIE5ldHdvcmtSVENQcm92aWRlciYgcnRjUHJvdmlkZXIsIGNvbnN0IHJ0
Yzo6U29ja2V0QWRkcmVzcyYgcmVtb3RlQWRkcmVzcywgaW50IHRjcE9wdGlvbnMsIGNvbnN0IFN0
cmluZyYgYXR0cmlidXRlZEJ1bmRsZUlkZW50aWZpZXIsIGJvb2wgaXNGaXJzdFBhcnR5LCBib29s
IGlzUmVsYXlEaXNhYmxlZCwgY29uc3QgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4mIGRvbWFp
biwgUmVmPElQQzo6Q29ubmVjdGlvbj4mJiBjb25uZWN0aW9uKQogewogICAgIC8vIEZJWE1FOiBX
ZSBzaG91bGQgbWlncmF0ZSBzc2x0Y3AgY2FuZGlkYXRlcywgbWF5YmUgc3VwcG9ydCBPUFRfVExT
X0lOU0VDVVJFIGFzIHdlbGwuCiAgICAgaWYgKCh0Y3BPcHRpb25zICYgcnRjOjpQYWNrZXRTb2Nr
ZXRGYWN0b3J5OjpPUFRfVExTX0ZBS0UpIHx8ICh0Y3BPcHRpb25zICYgcnRjOjpQYWNrZXRTb2Nr
ZXRGYWN0b3J5OjpPUFRfVExTX0lOU0VDVVJFKSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0g
ICAgcmV0dXJuIG1ha2VVbmlxdWU8TmV0d29ya1JUQ1RDUFNvY2tldENvY29hPihpZGVudGlmaWVy
LCBydGNQcm92aWRlciwgcmVtb3RlQWRkcmVzcywgdGNwT3B0aW9ucywgYXR0cmlidXRlZEJ1bmRs
ZUlkZW50aWZpZXIsIGlzUmVsYXlEaXNhYmxlZCwgV1RGTW92ZShjb25uZWN0aW9uKSk7CisgICAg
cmV0dXJuIG1ha2VVbmlxdWU8TmV0d29ya1JUQ1RDUFNvY2tldENvY29hPihpZGVudGlmaWVyLCBy
dGNQcm92aWRlciwgcmVtb3RlQWRkcmVzcywgdGNwT3B0aW9ucywgYXR0cmlidXRlZEJ1bmRsZUlk
ZW50aWZpZXIsIGlzRmlyc3RQYXJ0eSwgaXNSZWxheURpc2FibGVkLCBkb21haW4sIFdURk1vdmUo
Y29ubmVjdGlvbikpOwogfQogCiBzdGF0aWMgaW5saW5lIHZvaWQgcHJvY2Vzc0luY29taW5nRGF0
YShSZXRhaW5QdHI8bndfY29ubmVjdGlvbl90PiYmIG53Q29ubmVjdGlvbiwgRnVuY3Rpb248VmVj
dG9yPHVpbnQ4X3Q+KFZlY3Rvcjx1aW50OF90PiYmKT4mJiBwcm9jZXNzRGF0YSwgVmVjdG9yPHVp
bnQ4X3Q+JiYgYnVmZmVyID0geyB9KQpAQCAtODEsNyArODEsNyBAQCBzdGF0aWMgaW5saW5lIHZv
aWQgcHJvY2Vzc0luY29taW5nRGF0YShSZXRhaW5QdHI8bndfY29ubmVjdGlvbl90PiYmIG53Q29u
bmVjdGlvbgogICAgIH0pLmdldCgpKTsKIH0KIAotTmV0d29ya1JUQ1RDUFNvY2tldENvY29hOjpO
ZXR3b3JrUlRDVENQU29ja2V0Q29jb2EoTGliV2ViUlRDU29ja2V0SWRlbnRpZmllciBpZGVudGlm
aWVyLCBOZXR3b3JrUlRDUHJvdmlkZXImIHJ0Y1Byb3ZpZGVyLCBjb25zdCBydGM6OlNvY2tldEFk
ZHJlc3MmIHJlbW90ZUFkZHJlc3MsIGludCBvcHRpb25zLCBjb25zdCBTdHJpbmcmIGF0dHJpYnV0
ZWRCdW5kbGVJZGVudGlmaWVyLCBib29sIGlzUmVsYXlEaXNhYmxlZCwgUmVmPElQQzo6Q29ubmVj
dGlvbj4mJiBjb25uZWN0aW9uKQorTmV0d29ya1JUQ1RDUFNvY2tldENvY29hOjpOZXR3b3JrUlRD
VENQU29ja2V0Q29jb2EoTGliV2ViUlRDU29ja2V0SWRlbnRpZmllciBpZGVudGlmaWVyLCBOZXR3
b3JrUlRDUHJvdmlkZXImIHJ0Y1Byb3ZpZGVyLCBjb25zdCBydGM6OlNvY2tldEFkZHJlc3MmIHJl
bW90ZUFkZHJlc3MsIGludCBvcHRpb25zLCBjb25zdCBTdHJpbmcmIGF0dHJpYnV0ZWRCdW5kbGVJ
ZGVudGlmaWVyLCBib29sIGlzRmlyc3RQYXJ0eSwgYm9vbCBpc1JlbGF5RGlzYWJsZWQsIGNvbnN0
IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJiBkb21haW4sIFJlZjxJUEM6OkNvbm5lY3Rpb24+
JiYgY29ubmVjdGlvbikKICAgICA6IG1faWRlbnRpZmllcihpZGVudGlmaWVyKQogICAgICwgbV9y
dGNQcm92aWRlcihydGNQcm92aWRlcikKICAgICAsIG1fY29ubmVjdGlvbihXVEZNb3ZlKGNvbm5l
Y3Rpb24pKQpAQCAtOTgsNiArOTgsNyBAQCBOZXR3b3JrUlRDVENQU29ja2V0Q29jb2E6Ok5ldHdv
cmtSVENUQ1BTb2NrZXRDb2NvYShMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyIGlkZQogICAgIH0p
KTsKIAogICAgIHNldE5XUGFyYW1ldGVyc0FwcGxpY2F0aW9uSWRlbnRpZmllcnModGNwVExTLmdl
dCgpLCBydGNQcm92aWRlci5hcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKSwgcnRjUHJvdmlk
ZXIuc291cmNlQXBwbGljYXRpb25BdWRpdFRva2VuKCksIGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlm
aWVyKTsKKyAgICBzZXROV1BhcmFtZXRlcnNUcmFja2VyT3B0aW9ucyh0Y3BUTFMuZ2V0KCksIGlz
UmVsYXlEaXNhYmxlZCwgaXNGaXJzdFBhcnR5LCBpc0tub3duVHJhY2tlcihkb21haW4pKTsKIAog
ICAgIGlmIChpc1JlbGF5RGlzYWJsZWQpCiAgICAgICAgIG53X3BhcmFtZXRlcnNfc2V0X2FjY291
bnRfaWQodGNwVExTLmdldCgpLCAiY29tLmFwcGxlLnNhZmFyaS5wZWVydG9wZWVyIik7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVURQ
U29ja2V0Q29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3
b3JrUlRDVURQU29ja2V0Q29jb2EubW0KaW5kZXggYmNkMDk1M2Y1ZWNjYTY3YTAzYzExNTQ2ODYy
NDUxZGNlMDViNWU1NS4uZTE1ZjE2YjM4MDMyMTNhMTViNTE5OWVlNGNkYjljMTgwNDQyYzk3NSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JU
Q1VEUFNvY2tldENvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2Vi
cnRjL05ldHdvcmtSVENVRFBTb2NrZXRDb2NvYS5tbQpAQCAtMzIsNyArMzIsNiBAQAogI2luY2x1
ZGUgIkxpYldlYlJUQ05ldHdvcmtNZXNzYWdlcy5oIgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKICNp
bmNsdWRlICJOV1BhcmFtZXRlcnNTUEkuaCIKLSNpbmNsdWRlIDxXZWJDb3JlL1JlZ2lzdHJhYmxl
RG9tYWluLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TVFVOTWVzc2FnZVBhcnNpbmcuaD4KICNpbmNs
dWRlIDxkaXNwYXRjaC9kaXNwYXRjaC5oPgogI2luY2x1ZGUgPHd0Zi9CbG9ja1B0ci5oPgpAQCAt
NDAsMTIgKzM5LDYgQEAKICNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVJlZkNvdW50ZWQuaD4KIAog
I2lmIEhBVkUoTldQQVJBTUVURVJTX1RSQUNLRVJfQVBJKQotU09GVF9MSU5LX0xJQlJBUlkobGli
bmV0d29ya2V4dGVuc2lvbikKLVNPRlRfTElOS19DTEFTUyhsaWJuZXR3b3JrZXh0ZW5zaW9uLCBO
RUhlbHBlclRyYWNrZXJEaXNwb3NpdGlvbl90KQotU09GVF9MSU5LX0NMQVNTKGxpYm5ldHdvcmtl
eHRlbnNpb24sIE5FSGVscGVyVHJhY2tlckFwcEluZm9SZWYpCi1TT0ZUX0xJTktfQ0xBU1MobGli
bmV0d29ya2V4dGVuc2lvbiwgTkVIZWxwZXJUcmFja2VyRG9tYWluQ29udGV4dFJlZikKLVNPRlRf
TElOSyhsaWJuZXR3b3JrZXh0ZW5zaW9uLCBORUhlbHBlclRyYWNrZXJHZXREaXNwb3NpdGlvbiwg
TkVIZWxwZXJUcmFja2VyRGlzcG9zaXRpb25fdCosIChORUhlbHBlclRyYWNrZXJBcHBJbmZvUmVm
ICphcHBfaW5mb19yZWYsIENGQXJyYXlSZWYgZG9tYWlucywgTkVIZWxwZXJUcmFja2VyRG9tYWlu
Q29udGV4dFJlZiAqdHJhY2tlckRvbWFpbkNvbnRleHRSZWYsIENGSW5kZXggKnRyYWNrZXJEb21h
aW5JbmRleCksIChhcHBfaW5mb19yZWYsIGRvbWFpbnMsIHRyYWNrZXJEb21haW5Db250ZXh0UmVm
LCB0cmFja2VyRG9tYWluSW5kZXgpKQotCiBTT0ZUX0xJTktfTElCUkFSWV9PUFRJT05BTChsaWJu
ZXR3b3JrKQogU09GVF9MSU5LX09QVElPTkFMKGxpYm5ldHdvcmssIG53X3BhcmFtZXRlcnNfYWxs
b3dfc2hhcmluZ19wb3J0X3dpdGhfbGlzdGVuZXIsIHZvaWQsIF9fY2RlY2wsIChud19wYXJhbWV0
ZXJzX3QsIG53X2xpc3RlbmVyX3QpKQogI2VuZGlmCkBAIC0xNDksMTYgKzE0Miw2IEBAIHN0YXRp
YyBydGM6OlNvY2tldEFkZHJlc3Mgc29ja2V0QWRkcmVzc0Zyb21JbmNvbWluZ0Nvbm5lY3Rpb24o
bndfY29ubmVjdGlvbl90IGNvCiAgICAgcmV0dXJuIHJ0Yzo6U29ja2V0QWRkcmVzcyB7IG53X2Vu
ZHBvaW50X2dldF9ob3N0bmFtZShlbmRwb2ludC5nZXQoKSksIG53X2VuZHBvaW50X2dldF9wb3J0
KGVuZHBvaW50LmdldCgpKSB9OwogfQogCi0jaWYgSEFWRShOV1BBUkFNRVRFUlNfVFJBQ0tFUl9B
UEkpCi1zdGF0aWMgYm9vbCBpc0tub3duVHJhY2tlcihjb25zdCBXZWJDb3JlOjpSZWdpc3RyYWJs
ZURvbWFpbiYgZG9tYWluKQotewotICAgIE5TQXJyYXk8TlNTdHJpbmcgKj4gKmRvbWFpbnMgPSBA
W2RvbWFpbi5zdHJpbmcoKV07Ci0gICAgTkVIZWxwZXJUcmFja2VyRG9tYWluQ29udGV4dFJlZiAq
Y29udGV4dCA9IG5pbDsKLSAgICBDRkluZGV4IGluZGV4ID0gMDsKLSAgICByZXR1cm4gISFORUhl
bHBlclRyYWNrZXJHZXREaXNwb3NpdGlvbihudWxscHRyLCAoQ0ZBcnJheVJlZilkb21haW5zLCBj
b250ZXh0LCAmaW5kZXgpOwotfQotI2VuZGlmCi0KIE5ldHdvcmtSVENVRFBTb2NrZXRDb2NvYUNv
bm5lY3Rpb25zOjpOZXR3b3JrUlRDVURQU29ja2V0Q29jb2FDb25uZWN0aW9ucyhXZWJDb3JlOjpM
aWJXZWJSVENTb2NrZXRJZGVudGlmaWVyIGlkZW50aWZpZXIsIE5ldHdvcmtSVENQcm92aWRlciYg
cnRjUHJvdmlkZXIsIGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYgYWRkcmVzcywgUmVmPElQQzo6
Q29ubmVjdGlvbj4mJiBjb25uZWN0aW9uLCBTdHJpbmcmJiBhdHRyaWJ1dGVkQnVuZGxlSWRlbnRp
ZmllciwgYm9vbCBpc0ZpcnN0UGFydHksIGJvb2wgaXNSZWxheURpc2FibGVkLCBjb25zdCBXZWJD
b3JlOjpSZWdpc3RyYWJsZURvbWFpbiYgZG9tYWluKQogICAgIDogbV9pZGVudGlmaWVyKGlkZW50
aWZpZXIpCiAgICAgLCBtX2Nvbm5lY3Rpb24oV1RGTW92ZShjb25uZWN0aW9uKSkKQEAgLTI0NSw2
ICsyMjgsNyBAQCB2b2lkIE5ldHdvcmtSVENVRFBTb2NrZXRDb2NvYUNvbm5lY3Rpb25zOjpjb25m
aWd1cmVQYXJhbWV0ZXJzKG53X3BhcmFtZXRlcnNfdCBwYQogI2VuZGlmCiAKICAgICBzZXROV1Bh
cmFtZXRlcnNBcHBsaWNhdGlvbklkZW50aWZpZXJzKHBhcmFtZXRlcnMsIG1fc291cmNlQXBwbGlj
YXRpb25CdW5kbGVJZGVudGlmaWVyLmRhdGEoKSwgbV9zb3VyY2VBcHBsaWNhdGlvbkF1ZGl0VG9r
ZW4sIG1fYXR0cmlidXRlZEJ1bmRsZUlkZW50aWZpZXIpOworICAgIHNldE5XUGFyYW1ldGVyc1Ry
YWNrZXJPcHRpb25zKHBhcmFtZXRlcnMsIG1fc2hvdWxkQnlwYXNzUmVsYXksIG1faXNGaXJzdFBh
cnR5LCBtX2lzS25vd25UcmFja2VyKTsKIAogICAgIG53X3BhcmFtZXRlcnNfc2V0X3JldXNlX2xv
Y2FsX2FkZHJlc3MocGFyYW1ldGVycywgdHJ1ZSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVXRpbGl0aWVzQ29jb2EuaCBiL1Nv
dXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENVdGlsaXRpZXNDb2Nv
YS5oCmluZGV4IDZjMjUzMTA4ZGQzNzFmNGEyNDNjYTIyNmE3YTg4ZTkzYWFiYTg1MmQuLmY3NGYx
Y2Y4NDUyZGVmY2FiODZhYjhiZTE0OTIwNGJhNzZiOWRlYjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENVdGlsaXRpZXNDb2NvYS5oCisr
KyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENVdGlsaXRp
ZXNDb2NvYS5oCkBAIC0zMSw5ICszMSwxNSBAQAogI2luY2x1ZGUgPG9wdGlvbmFsPgogI2luY2x1
ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIFJlZ2lzdHJh
YmxlRG9tYWluOworfQorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogdm9pZCBzZXROV1BhcmFtZXRl
cnNBcHBsaWNhdGlvbklkZW50aWZpZXJzKG53X3BhcmFtZXRlcnNfdCwgY29uc3QgY2hhciogc291
cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyLCBzdGQ6Om9wdGlvbmFsPGF1ZGl0X3Rva2Vu
X3Q+LCBjb25zdCBTdHJpbmcmIGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyKTsKK3ZvaWQgc2V0
TldQYXJhbWV0ZXJzVHJhY2tlck9wdGlvbnMobndfcGFyYW1ldGVyc190LCBib29sIHNob3VsZEJ5
cGFzc1JlbGF5LCBib29sIGlzRmlyc3RQYXJ0eSwgYm9vbCBpc0tub3duVHJhY2tlcik7Citib29s
IGlzS25vd25UcmFja2VyKGNvbnN0IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJik7CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYktpdAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVXRpbGl0aWVzQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVXRpbGl0aWVzQ29jb2EubW0KaW5kZXgg
NTIxNjAwMTdiODcwNmQxZjg4ZWQ0ODExMmY0ZWZmOWE3ZTk1OWM1Ny4uMzE0MTcxZGM1ZmZmNDg0
NDRkNzUwMzA5YjQwYTVmMWVhYzUxMDI5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1V0aWxpdGllc0NvY29hLm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENVdGlsaXRpZXNDb2NvYS5t
bQpAQCAtMjgsMTAgKzI4LDE3IEBACiAKICNpZiBVU0UoTElCV0VCUlRDKQogCisjaW1wb3J0IDxX
ZWJDb3JlL1JlZ2lzdHJhYmxlRG9tYWluLmg+CiAjaW1wb3J0IDx3dGYvU29mdExpbmtpbmcuaD4K
ICNpbXBvcnQgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiAjaWYgSEFWRShOV1BBUkFNRVRFUlNf
VFJBQ0tFUl9BUEkpCitTT0ZUX0xJTktfTElCUkFSWShsaWJuZXR3b3JrZXh0ZW5zaW9uKQorU09G
VF9MSU5LX0NMQVNTKGxpYm5ldHdvcmtleHRlbnNpb24sIE5FSGVscGVyVHJhY2tlckRpc3Bvc2l0
aW9uX3QpCitTT0ZUX0xJTktfQ0xBU1MobGlibmV0d29ya2V4dGVuc2lvbiwgTkVIZWxwZXJUcmFj
a2VyQXBwSW5mb1JlZikKK1NPRlRfTElOS19DTEFTUyhsaWJuZXR3b3JrZXh0ZW5zaW9uLCBORUhl
bHBlclRyYWNrZXJEb21haW5Db250ZXh0UmVmKQorU09GVF9MSU5LKGxpYm5ldHdvcmtleHRlbnNp
b24sIE5FSGVscGVyVHJhY2tlckdldERpc3Bvc2l0aW9uLCBORUhlbHBlclRyYWNrZXJEaXNwb3Np
dGlvbl90KiwgKE5FSGVscGVyVHJhY2tlckFwcEluZm9SZWYgKmFwcF9pbmZvX3JlZiwgQ0ZBcnJh
eVJlZiBkb21haW5zLCBORUhlbHBlclRyYWNrZXJEb21haW5Db250ZXh0UmVmICp0cmFja2VyRG9t
YWluQ29udGV4dFJlZiwgQ0ZJbmRleCAqdHJhY2tlckRvbWFpbkluZGV4KSwgKGFwcF9pbmZvX3Jl
ZiwgZG9tYWlucywgdHJhY2tlckRvbWFpbkNvbnRleHRSZWYsIHRyYWNrZXJEb21haW5JbmRleCkp
CisKIFNPRlRfTElOS19MSUJSQVJZX09QVElPTkFMKGxpYm5ldHdvcmspCiBTT0ZUX0xJTktfT1BU
SU9OQUwobGlibmV0d29yaywgbndfcGFyYW1ldGVyc19zZXRfYXR0cmlidXRlZF9idW5kbGVfaWRl
bnRpZmllciwgdm9pZCwgX19jZGVjbCwgKG53X3BhcmFtZXRlcnNfdCwgY29uc3QgY2hhciopKQog
I2VuZGlmCkBAIC01MSw2ICs1OCwyOCBAQCB2b2lkIHNldE5XUGFyYW1ldGVyc0FwcGxpY2F0aW9u
SWRlbnRpZmllcnMobndfcGFyYW1ldGVyc190IHBhcmFtZXRlcnMsIGNvbnN0IGNoYQogI2VuZGlm
CiB9CiAKK3ZvaWQgc2V0TldQYXJhbWV0ZXJzVHJhY2tlck9wdGlvbnMobndfcGFyYW1ldGVyc190
IHBhcmFtZXRlcnMsIGJvb2wgc2hvdWxkQnlwYXNzUmVsYXksIGJvb2wgaXNGaXJzdFBhcnR5LCBi
b29sIGlzS25vd25UcmFja2VyKQoreworICAgIGlmIChzaG91bGRCeXBhc3NSZWxheSkKKyAgICAg
ICAgbndfcGFyYW1ldGVyc19zZXRfYWNjb3VudF9pZChwYXJhbWV0ZXJzLCAiY29tLmFwcGxlLnNh
ZmFyaS5wZWVydG9wZWVyIik7CisjaWYgSEFWRShOV1BBUkFNRVRFUlNfVFJBQ0tFUl9BUEkpCisg
ICAgbndfcGFyYW1ldGVyc19zZXRfaXNfdGhpcmRfcGFydHlfd2ViX2NvbnRlbnQocGFyYW1ldGVy
cywgIWlzRmlyc3RQYXJ0eSk7CisgICAgbndfcGFyYW1ldGVyc19zZXRfaXNfa25vd25fdHJhY2tl
cihwYXJhbWV0ZXJzLCBpc0tub3duVHJhY2tlcik7CisjZW5kaWYKK30KKworYm9vbCBpc0tub3du
VHJhY2tlcihjb25zdCBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiYgZG9tYWluKQoreworI2lm
IEhBVkUoTldQQVJBTUVURVJTX1RSQUNLRVJfQVBJKQorICAgIE5TQXJyYXk8TlNTdHJpbmcgKj4g
KmRvbWFpbnMgPSBAW2RvbWFpbi5zdHJpbmcoKV07CisgICAgTkVIZWxwZXJUcmFja2VyRG9tYWlu
Q29udGV4dFJlZiAqY29udGV4dCA9IG5pbDsKKyAgICBDRkluZGV4IGluZGV4ID0gMDsKKyAgICBy
ZXR1cm4gISFORUhlbHBlclRyYWNrZXJHZXREaXNwb3NpdGlvbihudWxscHRyLCAoQ0ZBcnJheVJl
Zilkb21haW5zLCBjb250ZXh0LCAmaW5kZXgpOworI2Vsc2UKKyAgICByZXR1cm4gZmFsc2U7Cisj
ZW5kaWYKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CiAKICNlbmRpZiAvLyBVU0UoTElCV0VC
UlRDKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvd2VicnRj
L0xpYldlYlJUQ1Byb3ZpZGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3Jr
L3dlYnJ0Yy9MaWJXZWJSVENQcm92aWRlci5jcHAKaW5kZXggOTY4YzlmMzA0YjY1NDgwOWY5OTI2
MjU2YzEwMDU1MDdjOTcxMmY1NS4uMmMzY2NhMzAzMWMzZjk5Njk4YjJiOWIwNDZjNTA1YjI4OWMw
N2QwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvd2VicnRj
L0xpYldlYlJUQ1Byb3ZpZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0
d29yay93ZWJydGMvTGliV2ViUlRDUHJvdmlkZXIuY3BwCkBAIC0xMjksNyArMTI5LDcgQEAgcnRj
OjpBc3luY1BhY2tldFNvY2tldCogUlRDU29ja2V0RmFjdG9yeTo6Q3JlYXRlU2VydmVyVGNwU29j
a2V0KGNvbnN0IHJ0Yzo6U29ja2UKIAogcnRjOjpBc3luY1BhY2tldFNvY2tldCogUlRDU29ja2V0
RmFjdG9yeTo6Q3JlYXRlQ2xpZW50VGNwU29ja2V0KGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYg
bG9jYWxBZGRyZXNzLCBjb25zdCBydGM6OlNvY2tldEFkZHJlc3MmIHJlbW90ZUFkZHJlc3MsIGNv
bnN0IHJ0Yzo6UHJveHlJbmZvJiwgY29uc3Qgc3RkOjpzdHJpbmcmLCBjb25zdCBydGM6OlBhY2tl
dFNvY2tldFRjcE9wdGlvbnMmIG9wdGlvbnMpCiB7Ci0gICAgcmV0dXJuIFdlYlByb2Nlc3M6OnNp
bmdsZXRvbigpLmxpYldlYlJUQ05ldHdvcmsoKS5zb2NrZXRGYWN0b3J5KCkuY3JlYXRlQ2xpZW50
VGNwU29ja2V0KHRoaXMsIGxvY2FsQWRkcmVzcywgcmVtb3RlQWRkcmVzcywgU3RyaW5nIHsgbV91
c2VyQWdlbnQgfSwgb3B0aW9ucywgbV9wYWdlSWRlbnRpZmllciwgbV9pc1JlbGF5RGlzYWJsZWQp
OworICAgIHJldHVybiBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5saWJXZWJSVENOZXR3b3JrKCku
c29ja2V0RmFjdG9yeSgpLmNyZWF0ZUNsaWVudFRjcFNvY2tldCh0aGlzLCBsb2NhbEFkZHJlc3Ms
IHJlbW90ZUFkZHJlc3MsIFN0cmluZyB7IG1fdXNlckFnZW50IH0sIG9wdGlvbnMsIG1fcGFnZUlk
ZW50aWZpZXIsIG1faXNGaXJzdFBhcnR5LCBtX2lzUmVsYXlEaXNhYmxlZCwgbV9kb21haW4pOwog
fQogCiBydGM6OkFzeW5jUmVzb2x2ZXJJbnRlcmZhY2UqIFJUQ1NvY2tldEZhY3Rvcnk6OkNyZWF0
ZUFzeW5jUmVzb2x2ZXIoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05l
dHdvcmsvd2VicnRjL0xpYldlYlJUQ1NvY2tldEZhY3RvcnkuY3BwIGIvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL05ldHdvcmsvd2VicnRjL0xpYldlYlJUQ1NvY2tldEZhY3RvcnkuY3BwCmluZGV4
IDgxZTE1ZTg4NjRiNjBiOTFlM2EyM2VlMmY2YjgzZjc5ZDMzNmQzOWYuLjFlYWFmMzVlZGExNTc4
MzkyZWI2ZjgyNDhhMTg3OWY1ZTg5NTc5MGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9MaWJXZWJSVENTb2NrZXRGYWN0b3J5LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay93ZWJydGMvTGliV2ViUlRDU29ja2V0RmFj
dG9yeS5jcHAKQEAgLTEwNCw3ICsxMDQsNyBAQCBydGM6OkFzeW5jUGFja2V0U29ja2V0KiBMaWJX
ZWJSVENTb2NrZXRGYWN0b3J5OjpjcmVhdGVVZHBTb2NrZXQoY29uc3Qgdm9pZCogc29jawogICAg
IHJldHVybiBzb2NrZXQucmVsZWFzZSgpOwogfQogCi1ydGM6OkFzeW5jUGFja2V0U29ja2V0KiBM
aWJXZWJSVENTb2NrZXRGYWN0b3J5OjpjcmVhdGVDbGllbnRUY3BTb2NrZXQoY29uc3Qgdm9pZCog
c29ja2V0R3JvdXAsIGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYgbG9jYWxBZGRyZXNzLCBjb25z
dCBydGM6OlNvY2tldEFkZHJlc3MmIHJlbW90ZUFkZHJlc3MsIFN0cmluZyYmIHVzZXJBZ2VudCwg
Y29uc3QgcnRjOjpQYWNrZXRTb2NrZXRUY3BPcHRpb25zJiBvcHRpb25zLCBXZWJQYWdlUHJveHlJ
ZGVudGlmaWVyIHBhZ2VJZGVudGlmaWVyLCBib29sIGlzUmVsYXlEaXNhYmxlZCkKK3J0Yzo6QXN5
bmNQYWNrZXRTb2NrZXQqIExpYldlYlJUQ1NvY2tldEZhY3Rvcnk6OmNyZWF0ZUNsaWVudFRjcFNv
Y2tldChjb25zdCB2b2lkKiBzb2NrZXRHcm91cCwgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiBs
b2NhbEFkZHJlc3MsIGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYgcmVtb3RlQWRkcmVzcywgU3Ry
aW5nJiYgdXNlckFnZW50LCBjb25zdCBydGM6OlBhY2tldFNvY2tldFRjcE9wdGlvbnMmIG9wdGlv
bnMsIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZUlkZW50aWZpZXIsIGJvb2wgaXNGaXJzdFBh
cnR5LCBib29sIGlzUmVsYXlEaXNhYmxlZCwgY29uc3QgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21h
aW4mIGRvbWFpbikKIHsKICAgICBBU1NFUlQoIVdURjo6aXNNYWluUnVuTG9vcCgpKTsKIApAQCAt
MTEzLDEzICsxMTMsMTMgQEAgcnRjOjpBc3luY1BhY2tldFNvY2tldCogTGliV2ViUlRDU29ja2V0
RmFjdG9yeTo6Y3JlYXRlQ2xpZW50VGNwU29ja2V0KGNvbnN0IHZvaWQKIAogICAgIC8vIEZJWE1F
OiBXZSBvbmx5IHRyYW5zZmVyIG9wdGlvbnMub3B0cyBidXQgc2hvdWxkIGFsc28gaGFuZGxlIG90
aGVyIG1lbWJlcnMuCiAgICAgaWYgKG1fY29ubmVjdGlvbikKLSAgICAgICAgbV9jb25uZWN0aW9u
LT5zZW5kKE1lc3NhZ2VzOjpOZXR3b3JrUlRDUHJvdmlkZXI6OkNyZWF0ZUNsaWVudFRDUFNvY2tl
dChzb2NrZXQtPmlkZW50aWZpZXIoKSwgUlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyhwcmVwYXJl
U29ja2V0QWRkcmVzcyhsb2NhbEFkZHJlc3MsIG1fZGlzYWJsZU5vbkxvY2FsaG9zdENvbm5lY3Rp
b25zKSksIFJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MocHJlcGFyZVNvY2tldEFkZHJlc3MocmVt
b3RlQWRkcmVzcywgbV9kaXNhYmxlTm9uTG9jYWxob3N0Q29ubmVjdGlvbnMpKSwgdXNlckFnZW50
LCBvcHRpb25zLm9wdHMsIHBhZ2VJZGVudGlmaWVyLCBpc1JlbGF5RGlzYWJsZWQpLCAwKTsKKyAg
ICAgICAgbV9jb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpOZXR3b3JrUlRDUHJvdmlkZXI6OkNy
ZWF0ZUNsaWVudFRDUFNvY2tldChzb2NrZXQtPmlkZW50aWZpZXIoKSwgUlRDTmV0d29yazo6U29j
a2V0QWRkcmVzcyhwcmVwYXJlU29ja2V0QWRkcmVzcyhsb2NhbEFkZHJlc3MsIG1fZGlzYWJsZU5v
bkxvY2FsaG9zdENvbm5lY3Rpb25zKSksIFJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MocHJlcGFy
ZVNvY2tldEFkZHJlc3MocmVtb3RlQWRkcmVzcywgbV9kaXNhYmxlTm9uTG9jYWxob3N0Q29ubmVj
dGlvbnMpKSwgdXNlckFnZW50LCBvcHRpb25zLm9wdHMsIHBhZ2VJZGVudGlmaWVyLCBpc0ZpcnN0
UGFydHksIGlzUmVsYXlEaXNhYmxlZCwgZG9tYWluKSwgMCk7CiAgICAgZWxzZSB7CiAgICAgICAg
IGNhbGxPbk1haW5SdW5Mb29wKFtdIHsKICAgICAgICAgICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRv
bigpLmVuc3VyZU5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbigpOwogICAgICAgICB9KTsKLSAgICAg
ICAgbV9wZW5kaW5nTWVzc2FnZVRhc2tzLmFwcGVuZChbaWRlbnRpZmllciA9IHNvY2tldC0+aWRl
bnRpZmllcigpLCBsb2NhbEFkZHJlc3MgPSBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzKHByZXBh
cmVTb2NrZXRBZGRyZXNzKGxvY2FsQWRkcmVzcywgbV9kaXNhYmxlTm9uTG9jYWxob3N0Q29ubmVj
dGlvbnMpKSwgcmVtb3RlQWRkcmVzcyA9IFJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MocHJlcGFy
ZVNvY2tldEFkZHJlc3MocmVtb3RlQWRkcmVzcywgbV9kaXNhYmxlTm9uTG9jYWxob3N0Q29ubmVj
dGlvbnMpKSwgdXNlckFnZW50LCBvcHRzID0gb3B0aW9ucy5vcHRzLCBwYWdlSWRlbnRpZmllciwg
aXNSZWxheURpc2FibGVkXShhdXRvJiBjb25uZWN0aW9uKSB7Ci0gICAgICAgICAgICBjb25uZWN0
aW9uLnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtSVENQcm92aWRlcjo6Q3JlYXRlQ2xpZW50VENQU29j
a2V0KGlkZW50aWZpZXIsIGxvY2FsQWRkcmVzcywgcmVtb3RlQWRkcmVzcywgdXNlckFnZW50LCBv
cHRzLCBwYWdlSWRlbnRpZmllciwgaXNSZWxheURpc2FibGVkKSwgMCk7CisgICAgICAgIG1fcGVu
ZGluZ01lc3NhZ2VUYXNrcy5hcHBlbmQoW2lkZW50aWZpZXIgPSBzb2NrZXQtPmlkZW50aWZpZXIo
KSwgbG9jYWxBZGRyZXNzID0gUlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyhwcmVwYXJlU29ja2V0
QWRkcmVzcyhsb2NhbEFkZHJlc3MsIG1fZGlzYWJsZU5vbkxvY2FsaG9zdENvbm5lY3Rpb25zKSks
IHJlbW90ZUFkZHJlc3MgPSBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzKHByZXBhcmVTb2NrZXRB
ZGRyZXNzKHJlbW90ZUFkZHJlc3MsIG1fZGlzYWJsZU5vbkxvY2FsaG9zdENvbm5lY3Rpb25zKSks
IHVzZXJBZ2VudCwgb3B0cyA9IG9wdGlvbnMub3B0cywgcGFnZUlkZW50aWZpZXIsIGlzRmlyc3RQ
YXJ0eSwgaXNSZWxheURpc2FibGVkLCBkb21haW5dKGF1dG8mIGNvbm5lY3Rpb24pIHsKKyAgICAg
ICAgICAgIGNvbm5lY3Rpb24uc2VuZChNZXNzYWdlczo6TmV0d29ya1JUQ1Byb3ZpZGVyOjpDcmVh
dGVDbGllbnRUQ1BTb2NrZXQoaWRlbnRpZmllciwgbG9jYWxBZGRyZXNzLCByZW1vdGVBZGRyZXNz
LCB1c2VyQWdlbnQsIG9wdHMsIHBhZ2VJZGVudGlmaWVyLCBpc0ZpcnN0UGFydHksIGlzUmVsYXlE
aXNhYmxlZCwgZG9tYWluKSwgMCk7CiAgICAgICAgIH0pOwogICAgIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvd2VicnRjL0xpYldlYlJUQ1NvY2tldEZh
Y3RvcnkuaCBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9MaWJXZWJS
VENTb2NrZXRGYWN0b3J5LmgKaW5kZXggYmQxOTljYTcxMWRiMTI2YjE3YzRiYWFkZDA4NDU4NmQ5
MWFlYTViMi4uZGYzMjdmZWQyYjc4ZjkzMzA5ODcxNjgyYjU3ZmY1NTM5ZjhmNjRhYyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvd2VicnRjL0xpYldlYlJUQ1Nv
Y2tldEZhY3RvcnkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay93ZWJy
dGMvTGliV2ViUlRDU29ja2V0RmFjdG9yeS5oCkBAIC01NCw3ICs1NCw3IEBAIHB1YmxpYzoKICAg
ICB2b2lkIGZvclNvY2tldEluR3JvdXAoY29uc3Qgdm9pZCogc29ja2V0R3JvdXAsIGNvbnN0IEZ1
bmN0aW9uPHZvaWQoTGliV2ViUlRDU29ja2V0Jik+Jik7CiAgICAgcnRjOjpBc3luY1BhY2tldFNv
Y2tldCogY3JlYXRlVWRwU29ja2V0KGNvbnN0IHZvaWQqIHNvY2tldEdyb3VwLCBjb25zdCBydGM6
OlNvY2tldEFkZHJlc3MmLCB1aW50MTZfdCBtaW5Qb3J0LCB1aW50MTZfdCBtYXhQb3J0LCBXZWJQ
YWdlUHJveHlJZGVudGlmaWVyLCBib29sIGlzRmlyc3RQYXJ0eSwgYm9vbCBpc1JlbGF5RGlzYWJs
ZWQsIGNvbnN0IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJik7CiAgICAgcnRjOjpBc3luY1Bh
Y2tldFNvY2tldCogY3JlYXRlU2VydmVyVGNwU29ja2V0KGNvbnN0IHZvaWQqIHNvY2tldEdyb3Vw
LCBjb25zdCBydGM6OlNvY2tldEFkZHJlc3MmLCB1aW50MTZfdCBtaW5Qb3J0LCB1aW50MTZfdCBt
YXhQb3J0LCBpbnQgb3B0aW9ucyk7Ci0gICAgcnRjOjpBc3luY1BhY2tldFNvY2tldCogY3JlYXRl
Q2xpZW50VGNwU29ja2V0KGNvbnN0IHZvaWQqIHNvY2tldEdyb3VwLCBjb25zdCBydGM6OlNvY2tl
dEFkZHJlc3MmIGxvY2FsQWRkcmVzcywgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiByZW1vdGVB
ZGRyZXNzLCBTdHJpbmcmJiB1c2VyQWdlbnQsIGNvbnN0IHJ0Yzo6UGFja2V0U29ja2V0VGNwT3B0
aW9ucyYsIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIsIGJvb2wgaXNSZWxheURpc2FibGVkKTsKKyAg
ICBydGM6OkFzeW5jUGFja2V0U29ja2V0KiBjcmVhdGVDbGllbnRUY3BTb2NrZXQoY29uc3Qgdm9p
ZCogc29ja2V0R3JvdXAsIGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYgbG9jYWxBZGRyZXNzLCBj
b25zdCBydGM6OlNvY2tldEFkZHJlc3MmIHJlbW90ZUFkZHJlc3MsIFN0cmluZyYmIHVzZXJBZ2Vu
dCwgY29uc3QgcnRjOjpQYWNrZXRTb2NrZXRUY3BPcHRpb25zJiwgV2ViUGFnZVByb3h5SWRlbnRp
ZmllciwgYm9vbCBpc0ZpcnN0UGFydHksIGJvb2wgaXNSZWxheURpc2FibGVkLCBjb25zdCBXZWJD
b3JlOjpSZWdpc3RyYWJsZURvbWFpbiYpOwogICAgIHJ0Yzo6QXN5bmNQYWNrZXRTb2NrZXQqIGNy
ZWF0ZU5ld0Nvbm5lY3Rpb25Tb2NrZXQoTGliV2ViUlRDU29ja2V0JiwgV2ViQ29yZTo6TGliV2Vi
UlRDU29ja2V0SWRlbnRpZmllciBuZXdDb25uZWN0aW9uU29ja2V0SWRlbnRpZmllciwgY29uc3Qg
cnRjOjpTb2NrZXRBZGRyZXNzJik7CiAKICAgICBMaWJXZWJSVENSZXNvbHZlciogcmVzb2x2ZXIo
TGliV2ViUlRDUmVzb2x2ZXJJZGVudGlmaWVyIGlkZW50aWZpZXIpIHsgcmV0dXJuIG1fcmVzb2x2
ZXJzLmdldChpZGVudGlmaWVyKTsgfQo=
</data>
<flag name="commit-queue"
          id="460476"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>437478</attachid>
            <date>2021-09-07 03:22:14 -0700</date>
            <delta_ts>2021-09-07 08:23:32 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch.patch</filename>
            <type>text/plain</type>
            <size>25548</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">RnJvbSBkY2QzNDZiMDQxZjIxNjE1NTFjZDE3ODQ2YmQ3OWQ2ZjE4YTYxNjE1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBZb3Vlbm4gRmFibGV0IDx5b3Vlbm5AYXBwbGUuY29tPgpEYXRl
OiBUaHUsIDIgU2VwIDIwMjEgMTQ6NTg6NDcgKzAyMDAKU3ViamVjdDogW1BBVENIIDEvM10gZml4
LTIyOTgwMQoKLS0tCiBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAg
ICAgfCAzMyArKysrKysrKysrKysrKysrKysrCiAuLi4vd2VicnRjL05ldHdvcmtSVENQcm92aWRl
ci5jcHAgICAgICAgICAgICAgfCAgNCArLS0KIC4uLi93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVy
LmggICAgICAgICAgICAgICB8ICAyICstCiAuLi4vd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5t
ZXNzYWdlcy5pbiAgICAgfCAgMiArLQogLi4uL3dlYnJ0Yy9OZXR3b3JrUlRDVENQU29ja2V0Q29j
b2EuaCAgICAgICAgIHwgIDQgKy0tCiAuLi4vd2VicnRjL05ldHdvcmtSVENUQ1BTb2NrZXRDb2Nv
YS5tbSAgICAgICAgfCAgNyArKy0tCiAuLi4vd2VicnRjL05ldHdvcmtSVENVRFBTb2NrZXRDb2Nv
YS5tbSAgICAgICAgfCAyMiArLS0tLS0tLS0tLS0tCiAuLi4vd2VicnRjL05ldHdvcmtSVENVdGls
aXRpZXNDb2NvYS5oICAgICAgICAgfCAgNiArKysrCiAuLi4vd2VicnRjL05ldHdvcmtSVENVdGls
aXRpZXNDb2NvYS5tbSAgICAgICAgfCAyOSArKysrKysrKysrKysrKysrCiAuLi4vTmV0d29yay93
ZWJydGMvTGliV2ViUlRDUHJvdmlkZXIuY3BwICAgICAgfCAgMiArLQogLi4uL05ldHdvcmsvd2Vi
cnRjL0xpYldlYlJUQ1NvY2tldEZhY3RvcnkuY3BwIHwgIDggKystLS0KIC4uLi9OZXR3b3JrL3dl
YnJ0Yy9MaWJXZWJSVENTb2NrZXRGYWN0b3J5LmggICB8ICAyICstCiAxMiBmaWxlcyBjaGFuZ2Vk
LCA4NSBpbnNlcnRpb25zKCspLCAzNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGEzYTc2YTg0
NWVmYS4uYTZiODQyZjIyN2IxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMzM4LDYgKzMzOCwzOSBAQAogCiAyMDIx
LTA5LTAzICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAorICAgICAgICBDYXRl
Z29yaXplIFdlYlJUQyBUQ1AgbncgY29ubmVjdGlvbnMgbGlrZSBkb25lIGZvciBXZWJSVEMgVURQ
IG53IGNvbm5lY3Rpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMjk4MDEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBNb3ZlIE5ldHdvcmtSVENVRFBTb2NrZXRDb2NvYSB0cmFja2VyIHJlbGF0ZWQgY29k
ZSB0byBpdHMgb3duIHJvdXRpbmUgaW4gTmV0d29ya1JUQ1V0aWxpdGllc0NvY29hLgorICAgICAg
ICBNYWtlIHVzZSBvZiB0aGF0IHJvdXRpbmUgaW4gTmV0d29ya1JUQ1RDUFNvY2tldENvY29hLgor
ICAgICAgICBUbyBkbyBzbywgd2UgbmVlZCB0byBwYXNzIG1vcmUgaW5mb3JtYXRpb24gd2hlbiBj
cmVhdGluZyBhIGNsaWVudCBUQ1Agc29ja2V0IGZyb20gV2ViUHJvY2VzcyB0byBOZXR3b3JrUHJv
Y2Vzcy4KKyAgICAgICAgTWFudWFsbHkgdGVzdGVkLgorCisgICAgICAgICogTmV0d29ya1Byb2Nl
c3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdv
cmtSVENQcm92aWRlcjo6Y3JlYXRlQ2xpZW50VENQU29ja2V0KToKKyAgICAgICAgKiBOZXR3b3Jr
UHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVyLmg6CisgICAgICAgICogTmV0d29ya1By
b2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBO
ZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1RDUFNvY2tldENvY29hLmg6CisgICAgICAg
ICogTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYS5tbToKKyAg
ICAgICAgKFdlYktpdDo6TmV0d29ya1JUQ1RDUFNvY2tldENvY29hOjpjcmVhdGVDbGllbnRUQ1BT
b2NrZXQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUlRDVENQU29ja2V0Q29jb2E6Ok5ldHdv
cmtSVENUQ1BTb2NrZXRDb2NvYSk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05l
dHdvcmtSVENVRFBTb2NrZXRDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1JUQ1VE
UFNvY2tldENvY29hQ29ubmVjdGlvbnM6OmNvbmZpZ3VyZVBhcmFtZXRlcnMpOgorICAgICAgICAo
V2ViS2l0Ojppc0tub3duVHJhY2tlcik6IERlbGV0ZWQuCisgICAgICAgICogTmV0d29ya1Byb2Nl
c3Mvd2VicnRjL05ldHdvcmtSVENVdGlsaXRpZXNDb2NvYS5oOgorICAgICAgICAqIE5ldHdvcmtQ
cm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVXRpbGl0aWVzQ29jb2EubW06CisgICAgICAgIChXZWJL
aXQ6OnNldE5XUGFyYW1ldGVyc1RyYWNrZXJPcHRpb25zKToKKyAgICAgICAgKFdlYktpdDo6aXNL
bm93blRyYWNrZXIpOgorICAgICAgICAqIFdlYlByb2Nlc3MvTmV0d29yay93ZWJydGMvTGliV2Vi
UlRDUHJvdmlkZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpSVENTb2NrZXRGYWN0b3J5OjpDcmVh
dGVDbGllbnRUY3BTb2NrZXQpOgorICAgICAgICAqIFdlYlByb2Nlc3MvTmV0d29yay93ZWJydGMv
TGliV2ViUlRDU29ja2V0RmFjdG9yeS5jcHA6CisgICAgICAgIChXZWJLaXQ6OkxpYldlYlJUQ1Nv
Y2tldEZhY3Rvcnk6OmNyZWF0ZUNsaWVudFRjcFNvY2tldCk6CisgICAgICAgICogV2ViUHJvY2Vz
cy9OZXR3b3JrL3dlYnJ0Yy9MaWJXZWJSVENTb2NrZXRGYWN0b3J5Lmg6CisKKzIwMjEtMDktMDIg
IFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCiAgICAgICAgIEVuYWJsZSBXZWJS
VEMgcmVsYXkgZm9yIFNhZmFyaVZpZXdDb250cm9sbGVyCiAgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjk3NjgKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVyLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5jcHAKaW5k
ZXggYjQxMmZmZmM5M2ZlLi4zNDE5NDdhM2I4ODUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5jcHAKKysrIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVyLmNwcApAQCAt
MjAyLDEzICsyMDIsMTMgQEAgcnRjOjpQcm94eUluZm8gTmV0d29ya1JUQ1Byb3ZpZGVyOjpwcm94
eUluZm9Gcm9tU2Vzc2lvbihjb25zdCBSVENOZXR3b3JrOjpTb2NrZXQKIH0KICNlbmRpZgogCi12
b2lkIE5ldHdvcmtSVENQcm92aWRlcjo6Y3JlYXRlQ2xpZW50VENQU29ja2V0KExpYldlYlJUQ1Nv
Y2tldElkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUlRDTmV0d29yazo6U29ja2V0QWRkcmVz
cyYgbG9jYWxBZGRyZXNzLCBjb25zdCBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzJiByZW1vdGVB
ZGRyZXNzLCBTdHJpbmcmJiB1c2VyQWdlbnQsIGludCBvcHRpb25zLCBXZWJQYWdlUHJveHlJZGVu
dGlmaWVyIHBhZ2VJZGVudGlmaWVyLCBib29sIGlzUmVsYXlEaXNhYmxlZCkKK3ZvaWQgTmV0d29y
a1JUQ1Byb3ZpZGVyOjpjcmVhdGVDbGllbnRUQ1BTb2NrZXQoTGliV2ViUlRDU29ja2V0SWRlbnRp
ZmllciBpZGVudGlmaWVyLCBjb25zdCBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzJiBsb2NhbEFk
ZHJlc3MsIGNvbnN0IFJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MmIHJlbW90ZUFkZHJlc3MsIFN0
cmluZyYmIHVzZXJBZ2VudCwgaW50IG9wdGlvbnMsIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgcGFn
ZUlkZW50aWZpZXIsIGJvb2wgaXNGaXJzdFBhcnR5LCBib29sIGlzUmVsYXlEaXNhYmxlZCwgV2Vi
Q29yZTo6UmVnaXN0cmFibGVEb21haW4mJiBkb21haW4pCiB7CiAgICAgQVNTRVJUKG1fcnRjTmV0
d29ya1RocmVhZC5Jc0N1cnJlbnQoKSk7CiAKICNpZiBQTEFURk9STShDT0NPQSkKICAgICBpZiAo
bV9wbGF0Zm9ybVRDUFNvY2tldHNFbmFibGVkKSB7Ci0gICAgICAgIGlmIChhdXRvIHNvY2tldCA9
IE5ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYTo6Y3JlYXRlQ2xpZW50VENQU29ja2V0KGlkZW50aWZp
ZXIsICp0aGlzLCByZW1vdGVBZGRyZXNzLnZhbHVlLCBvcHRpb25zLCBhdHRyaWJ1dGVkQnVuZGxl
SWRlbnRpZmllckZyb21QYWdlSWRlbnRpZmllcihwYWdlSWRlbnRpZmllciksIGlzUmVsYXlEaXNh
YmxlZCwgbV9pcGNDb25uZWN0aW9uLmNvcHlSZWYoKSkpIHsKKyAgICAgICAgaWYgKGF1dG8gc29j
a2V0ID0gTmV0d29ya1JUQ1RDUFNvY2tldENvY29hOjpjcmVhdGVDbGllbnRUQ1BTb2NrZXQoaWRl
bnRpZmllciwgKnRoaXMsIHJlbW90ZUFkZHJlc3MudmFsdWUsIG9wdGlvbnMsIGF0dHJpYnV0ZWRC
dW5kbGVJZGVudGlmaWVyRnJvbVBhZ2VJZGVudGlmaWVyKHBhZ2VJZGVudGlmaWVyKSwgaXNGaXJz
dFBhcnR5LCBpc1JlbGF5RGlzYWJsZWQsIGRvbWFpbiwgbV9pcGNDb25uZWN0aW9uLmNvcHlSZWYo
KSkpIHsKICAgICAgICAgICAgIGFkZFNvY2tldChpZGVudGlmaWVyLCBXVEZNb3ZlKHNvY2tldCkp
OwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJvdmlkZXIuaCBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5oCmluZGV4IGVi
MDdiZTE5OTM2Ni4uMDlhMjA1Njk3ZDczIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJvdmlkZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJvdmlkZXIuaApAQCAtMTE2LDcgKzEx
Niw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBzdGFydExpc3RlbmluZ0ZvcklQQygpOwogCiAgICAg
dm9pZCBjcmVhdGVVRFBTb2NrZXQoV2ViQ29yZTo6TGliV2ViUlRDU29ja2V0SWRlbnRpZmllciwg
Y29uc3QgUlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyYsIHVpbnQxNl90LCB1aW50MTZfdCwgV2Vi
UGFnZVByb3h5SWRlbnRpZmllciwgYm9vbCBpc0ZpcnN0UGFydHksIGJvb2wgaXNSZWxheURpc2Fi
bGVkLCBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiYmKTsKLSAgICB2b2lkIGNyZWF0ZUNsaWVu
dFRDUFNvY2tldChXZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyLCBjb25zdCBSVENO
ZXR3b3JrOjpTb2NrZXRBZGRyZXNzJiwgY29uc3QgUlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyYs
IFN0cmluZyYmIHVzZXJBZ2VudCwgaW50LCBXZWJQYWdlUHJveHlJZGVudGlmaWVyLCBib29sIGlz
UmVsYXlEaXNhYmxlZCk7CisgICAgdm9pZCBjcmVhdGVDbGllbnRUQ1BTb2NrZXQoV2ViQ29yZTo6
TGliV2ViUlRDU29ja2V0SWRlbnRpZmllciwgY29uc3QgUlRDTmV0d29yazo6U29ja2V0QWRkcmVz
cyYsIGNvbnN0IFJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MmLCBTdHJpbmcmJiB1c2VyQWdlbnQs
IGludCwgV2ViUGFnZVByb3h5SWRlbnRpZmllciwgYm9vbCBpc0ZpcnN0UGFydHksIGJvb2wgaXNS
ZWxheURpc2FibGVkLCBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiYmKTsKICAgICB2b2lkIGNy
ZWF0ZVNlcnZlclRDUFNvY2tldChXZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyLCBj
b25zdCBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzJiwgdWludDE2X3QgbWluUG9ydCwgdWludDE2
X3QgbWF4UG9ydCwgaW50KTsKICAgICB2b2lkIHdyYXBOZXdUQ1BDb25uZWN0aW9uKFdlYkNvcmU6
OkxpYldlYlJUQ1NvY2tldElkZW50aWZpZXIgaWRlbnRpZmllciwgV2ViQ29yZTo6TGliV2ViUlRD
U29ja2V0SWRlbnRpZmllciBuZXdDb25uZWN0aW9uU29ja2V0SWRlbnRpZmllcik7CiAgICAgdm9p
ZCBzZW5kVG9Tb2NrZXQoV2ViQ29yZTo6TGliV2ViUlRDU29ja2V0SWRlbnRpZmllciwgY29uc3Qg
SVBDOjpEYXRhUmVmZXJlbmNlJiwgUlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyYmLCBSVENQYWNr
ZXRPcHRpb25zJiYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93
ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVyLm1lc3NhZ2VzLmluIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVyLm1lc3NhZ2VzLmluCmluZGV4IGMy
ZDhiMjliZGZhNy4uNjgyMGVmMzg0NDU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJvdmlkZXIubWVzc2FnZXMuaW4KKysrIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVyLm1lc3Nh
Z2VzLmluCkBAIC0yNSw3ICsyNSw3IEBACiBtZXNzYWdlcyAtPiBOZXR3b3JrUlRDUHJvdmlkZXIg
ewogICAgIENyZWF0ZVVEUFNvY2tldChXZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVy
IGlkZW50aWZpZXIsIFdlYktpdDo6UlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyBsb2NhbEFkZHJl
c3MsIHVpbnQxNl90IG1pblBvcnQsIHVpbnQxNl90IG1heFBvcnQsIFdlYktpdDo6V2ViUGFnZVBy
b3h5SWRlbnRpZmllciBwYWdlSWRlbnRpZmllciwgYm9vbCBpc0ZpcnN0UGFydHksIGJvb2wgaXNS
ZWxheURpc2FibGVkLCBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiBkb21haW4pCiAgICAgQ3Jl
YXRlU2VydmVyVENQU29ja2V0KFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tldElkZW50aWZpZXIgaWRl
bnRpZmllciwgV2ViS2l0OjpSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzIGxvY2FsQWRkcmVzcywg
dWludDE2X3QgbWluUG9ydCwgdWludDE2X3QgbWF4UG9ydCwgaW50IG9wdGlvbnMpCi0gICAgQ3Jl
YXRlQ2xpZW50VENQU29ja2V0KFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tldElkZW50aWZpZXIgaWRl
bnRpZmllciwgV2ViS2l0OjpSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzIGxvY2FsQWRkcmVzcywg
V2ViS2l0OjpSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzIHJlbW90ZUFkZHJlc3MsIFN0cmluZyB1
c2VyQWdlbnQsIGludCBvcHRpb25zLCBXZWJLaXQ6OldlYlBhZ2VQcm94eUlkZW50aWZpZXIgcGFn
ZUlkZW50aWZpZXIsIGJvb2wgaXNSZWxheURpc2FibGVkKQorICAgIENyZWF0ZUNsaWVudFRDUFNv
Y2tldChXZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYktp
dDo6UlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyBsb2NhbEFkZHJlc3MsIFdlYktpdDo6UlRDTmV0
d29yazo6U29ja2V0QWRkcmVzcyByZW1vdGVBZGRyZXNzLCBTdHJpbmcgdXNlckFnZW50LCBpbnQg
b3B0aW9ucywgV2ViS2l0OjpXZWJQYWdlUHJveHlJZGVudGlmaWVyIHBhZ2VJZGVudGlmaWVyLCBi
b29sIGlzRmlyc3RQYXJ0eSwgYm9vbCBpc1JlbGF5RGlzYWJsZWQsIFdlYkNvcmU6OlJlZ2lzdHJh
YmxlRG9tYWluIGRvbWFpbikKICAgICBXcmFwTmV3VENQQ29ubmVjdGlvbihXZWJDb3JlOjpMaWJX
ZWJSVENTb2NrZXRJZGVudGlmaWVyIGlkZW50aWZpZXIsIFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tl
dElkZW50aWZpZXIgbmV3Q29ubmVjdGlvblNvY2tldElkZW50aWZpZXIpCiAKICAgICB2b2lkIFNl
dFBsYXRmb3JtVENQU29ja2V0c0VuYWJsZWQoYm9vbCBlbmFibGVkKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1RDUFNvY2tldENvY29h
LmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVENQU29j
a2V0Q29jb2EuaAppbmRleCAyZTI5MWUxMDViMTkuLjNkY2ZhZTQzZDlmNyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1RDUFNvY2tldENv
Y29hLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JU
Q1RDUFNvY2tldENvY29hLmgKQEAgLTM5LDkgKzM5LDkgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiBj
bGFzcyBOZXR3b3JrUlRDVENQU29ja2V0Q29jb2EgZmluYWwgOiBwdWJsaWMgTmV0d29ya1JUQ1By
b3ZpZGVyOjpTb2NrZXQgewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgot
ICAgIHN0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8TmV0d29ya1JUQ1Byb3ZpZGVyOjpTb2NrZXQ+IGNy
ZWF0ZUNsaWVudFRDUFNvY2tldChXZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyLCBO
ZXR3b3JrUlRDUHJvdmlkZXImLCBjb25zdCBydGM6OlNvY2tldEFkZHJlc3MmLCBpbnQgb3B0aW9u
cywgY29uc3QgU3RyaW5nJiBhdHRyaWJ1dGVkQnVuZGxlSWRlbnRpZmllciwgYm9vbCBpc1JlbGF5
RGlzYWJsZWQsIFJlZjxJUEM6OkNvbm5lY3Rpb24+JiYpOworICAgIHN0YXRpYyBzdGQ6OnVuaXF1
ZV9wdHI8TmV0d29ya1JUQ1Byb3ZpZGVyOjpTb2NrZXQ+IGNyZWF0ZUNsaWVudFRDUFNvY2tldChX
ZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyLCBOZXR3b3JrUlRDUHJvdmlkZXImLCBj
b25zdCBydGM6OlNvY2tldEFkZHJlc3MmLCBpbnQgb3B0aW9ucywgY29uc3QgU3RyaW5nJiBhdHRy
aWJ1dGVkQnVuZGxlSWRlbnRpZmllciwgYm9vbCBpc0ZpcnN0UGFydHksIGJvb2wgaXNSZWxheURp
c2FibGVkLCBjb25zdCBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiYsIFJlZjxJUEM6OkNvbm5l
Y3Rpb24+JiYpOwogCi0gICAgTmV0d29ya1JUQ1RDUFNvY2tldENvY29hKFdlYkNvcmU6OkxpYldl
YlJUQ1NvY2tldElkZW50aWZpZXIsIE5ldHdvcmtSVENQcm92aWRlciYsIGNvbnN0IHJ0Yzo6U29j
a2V0QWRkcmVzcyYsIGludCBvcHRpb25zLCBjb25zdCBTdHJpbmcmIGF0dHJpYnV0ZWRCdW5kbGVJ
ZGVudGlmaWVyLCBib29sIGlzUmVsYXlEaXNhYmxlZCwgUmVmPElQQzo6Q29ubmVjdGlvbj4mJik7
CisgICAgTmV0d29ya1JUQ1RDUFNvY2tldENvY29hKFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tldElk
ZW50aWZpZXIsIE5ldHdvcmtSVENQcm92aWRlciYsIGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYs
IGludCBvcHRpb25zLCBjb25zdCBTdHJpbmcmIGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyLCBi
b29sIGlzRmlyc3RQYXJ0eSwgYm9vbCBpc1JlbGF5RGlzYWJsZWQsIGNvbnN0IFdlYkNvcmU6OlJl
Z2lzdHJhYmxlRG9tYWluJiwgUmVmPElQQzo6Q29ubmVjdGlvbj4mJik7CiAKIHByaXZhdGU6CiAg
ICAgLy8gTmV0d29ya1JUQ1Byb3ZpZGVyOjpTb2NrZXQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVENQU29ja2V0Q29jb2EubW0gYi9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVENQU29ja2V0Q29j
b2EubW0KaW5kZXggNTc2NDg2MDhjOWYyLi45MDgyMTZmMDRlODcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYS5t
bQorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVENQ
U29ja2V0Q29jb2EubW0KQEAgLTUxLDEyICs1MSwxMiBAQCBzdGF0aWMgZGlzcGF0Y2hfcXVldWVf
dCB0Y3BTb2NrZXRRdWV1ZSgpCiAgICAgcmV0dXJuIHF1ZXVlOwogfQogCi1zdGQ6OnVuaXF1ZV9w
dHI8TmV0d29ya1JUQ1Byb3ZpZGVyOjpTb2NrZXQ+IE5ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYTo6
Y3JlYXRlQ2xpZW50VENQU29ja2V0KExpYldlYlJUQ1NvY2tldElkZW50aWZpZXIgaWRlbnRpZmll
ciwgTmV0d29ya1JUQ1Byb3ZpZGVyJiBydGNQcm92aWRlciwgY29uc3QgcnRjOjpTb2NrZXRBZGRy
ZXNzJiByZW1vdGVBZGRyZXNzLCBpbnQgdGNwT3B0aW9ucywgY29uc3QgU3RyaW5nJiBhdHRyaWJ1
dGVkQnVuZGxlSWRlbnRpZmllciwgYm9vbCBpc1JlbGF5RGlzYWJsZWQsIFJlZjxJUEM6OkNvbm5l
Y3Rpb24+JiYgY29ubmVjdGlvbikKK3N0ZDo6dW5pcXVlX3B0cjxOZXR3b3JrUlRDUHJvdmlkZXI6
OlNvY2tldD4gTmV0d29ya1JUQ1RDUFNvY2tldENvY29hOjpjcmVhdGVDbGllbnRUQ1BTb2NrZXQo
TGliV2ViUlRDU29ja2V0SWRlbnRpZmllciBpZGVudGlmaWVyLCBOZXR3b3JrUlRDUHJvdmlkZXIm
IHJ0Y1Byb3ZpZGVyLCBjb25zdCBydGM6OlNvY2tldEFkZHJlc3MmIHJlbW90ZUFkZHJlc3MsIGlu
dCB0Y3BPcHRpb25zLCBjb25zdCBTdHJpbmcmIGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyLCBi
b29sIGlzRmlyc3RQYXJ0eSwgYm9vbCBpc1JlbGF5RGlzYWJsZWQsIGNvbnN0IFdlYkNvcmU6OlJl
Z2lzdHJhYmxlRG9tYWluJiBkb21haW4sIFJlZjxJUEM6OkNvbm5lY3Rpb24+JiYgY29ubmVjdGlv
bikKIHsKICAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIG1pZ3JhdGUgc3NsdGNwIGNhbmRpZGF0ZXMs
IG1heWJlIHN1cHBvcnQgT1BUX1RMU19JTlNFQ1VSRSBhcyB3ZWxsLgogICAgIGlmICgodGNwT3B0
aW9ucyAmIHJ0Yzo6UGFja2V0U29ja2V0RmFjdG9yeTo6T1BUX1RMU19GQUtFKSB8fCAodGNwT3B0
aW9ucyAmIHJ0Yzo6UGFja2V0U29ja2V0RmFjdG9yeTo6T1BUX1RMU19JTlNFQ1VSRSkpCiAgICAg
ICAgIHJldHVybiBudWxscHRyOwotICAgIHJldHVybiBtYWtlVW5pcXVlPE5ldHdvcmtSVENUQ1BT
b2NrZXRDb2NvYT4oaWRlbnRpZmllciwgcnRjUHJvdmlkZXIsIHJlbW90ZUFkZHJlc3MsIHRjcE9w
dGlvbnMsIGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyLCBpc1JlbGF5RGlzYWJsZWQsIFdURk1v
dmUoY29ubmVjdGlvbikpOworICAgIHJldHVybiBtYWtlVW5pcXVlPE5ldHdvcmtSVENUQ1BTb2Nr
ZXRDb2NvYT4oaWRlbnRpZmllciwgcnRjUHJvdmlkZXIsIHJlbW90ZUFkZHJlc3MsIHRjcE9wdGlv
bnMsIGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyLCBpc0ZpcnN0UGFydHksIGlzUmVsYXlEaXNh
YmxlZCwgZG9tYWluLCBXVEZNb3ZlKGNvbm5lY3Rpb24pKTsKIH0KIAogc3RhdGljIGlubGluZSB2
b2lkIHByb2Nlc3NJbmNvbWluZ0RhdGEoUmV0YWluUHRyPG53X2Nvbm5lY3Rpb25fdD4mJiBud0Nv
bm5lY3Rpb24sIEZ1bmN0aW9uPFZlY3Rvcjx1aW50OF90PihWZWN0b3I8dWludDhfdD4mJik+JiYg
cHJvY2Vzc0RhdGEsIFZlY3Rvcjx1aW50OF90PiYmIGJ1ZmZlciA9IHsgfSkKQEAgLTgxLDcgKzgx
LDcgQEAgc3RhdGljIGlubGluZSB2b2lkIHByb2Nlc3NJbmNvbWluZ0RhdGEoUmV0YWluUHRyPG53
X2Nvbm5lY3Rpb25fdD4mJiBud0Nvbm5lY3Rpb24KICAgICB9KS5nZXQoKSk7CiB9CiAKLU5ldHdv
cmtSVENUQ1BTb2NrZXRDb2NvYTo6TmV0d29ya1JUQ1RDUFNvY2tldENvY29hKExpYldlYlJUQ1Nv
Y2tldElkZW50aWZpZXIgaWRlbnRpZmllciwgTmV0d29ya1JUQ1Byb3ZpZGVyJiBydGNQcm92aWRl
ciwgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiByZW1vdGVBZGRyZXNzLCBpbnQgb3B0aW9ucywg
Y29uc3QgU3RyaW5nJiBhdHRyaWJ1dGVkQnVuZGxlSWRlbnRpZmllciwgYm9vbCBpc1JlbGF5RGlz
YWJsZWQsIFJlZjxJUEM6OkNvbm5lY3Rpb24+JiYgY29ubmVjdGlvbikKK05ldHdvcmtSVENUQ1BT
b2NrZXRDb2NvYTo6TmV0d29ya1JUQ1RDUFNvY2tldENvY29hKExpYldlYlJUQ1NvY2tldElkZW50
aWZpZXIgaWRlbnRpZmllciwgTmV0d29ya1JUQ1Byb3ZpZGVyJiBydGNQcm92aWRlciwgY29uc3Qg
cnRjOjpTb2NrZXRBZGRyZXNzJiByZW1vdGVBZGRyZXNzLCBpbnQgb3B0aW9ucywgY29uc3QgU3Ry
aW5nJiBhdHRyaWJ1dGVkQnVuZGxlSWRlbnRpZmllciwgYm9vbCBpc0ZpcnN0UGFydHksIGJvb2wg
aXNSZWxheURpc2FibGVkLCBjb25zdCBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiYgZG9tYWlu
LCBSZWY8SVBDOjpDb25uZWN0aW9uPiYmIGNvbm5lY3Rpb24pCiAgICAgOiBtX2lkZW50aWZpZXIo
aWRlbnRpZmllcikKICAgICAsIG1fcnRjUHJvdmlkZXIocnRjUHJvdmlkZXIpCiAgICAgLCBtX2Nv
bm5lY3Rpb24oV1RGTW92ZShjb25uZWN0aW9uKSkKQEAgLTk4LDYgKzk4LDcgQEAgTmV0d29ya1JU
Q1RDUFNvY2tldENvY29hOjpOZXR3b3JrUlRDVENQU29ja2V0Q29jb2EoTGliV2ViUlRDU29ja2V0
SWRlbnRpZmllciBpZGUKICAgICB9KSk7CiAKICAgICBzZXROV1BhcmFtZXRlcnNBcHBsaWNhdGlv
bklkZW50aWZpZXJzKHRjcFRMUy5nZXQoKSwgcnRjUHJvdmlkZXIuYXBwbGljYXRpb25CdW5kbGVJ
ZGVudGlmaWVyKCksIHJ0Y1Byb3ZpZGVyLnNvdXJjZUFwcGxpY2F0aW9uQXVkaXRUb2tlbigpLCBh
dHRyaWJ1dGVkQnVuZGxlSWRlbnRpZmllcik7CisgICAgc2V0TldQYXJhbWV0ZXJzVHJhY2tlck9w
dGlvbnModGNwVExTLmdldCgpLCBpc1JlbGF5RGlzYWJsZWQsIGlzRmlyc3RQYXJ0eSwgaXNLbm93
blRyYWNrZXIoZG9tYWluKSk7CiAKICAgICBpZiAoaXNSZWxheURpc2FibGVkKQogICAgICAgICBu
d19wYXJhbWV0ZXJzX3NldF9hY2NvdW50X2lkKHRjcFRMUy5nZXQoKSwgImNvbS5hcHBsZS5zYWZh
cmkucGVlcnRvcGVlciIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vz
cy93ZWJydGMvTmV0d29ya1JUQ1VEUFNvY2tldENvY29hLm1tIGIvU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1VEUFNvY2tldENvY29hLm1tCmluZGV4IGJjZDA5
NTNmNWVjYy4uMmFjZWU3YjQ4Mzk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVURQU29ja2V0Q29jb2EubW0KKysrIGIvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1VEUFNvY2tldENvY29hLm1tCkBA
IC0zMiw3ICszMiw2IEBACiAjaW5jbHVkZSAiTGliV2ViUlRDTmV0d29ya01lc3NhZ2VzLmgiCiAj
aW5jbHVkZSAiTG9nZ2luZy5oIgogI2luY2x1ZGUgIk5XUGFyYW1ldGVyc1NQSS5oIgotI2luY2x1
ZGUgPFdlYkNvcmUvUmVnaXN0cmFibGVEb21haW4uaD4KICNpbmNsdWRlIDxXZWJDb3JlL1NUVU5N
ZXNzYWdlUGFyc2luZy5oPgogI2luY2x1ZGUgPGRpc3BhdGNoL2Rpc3BhdGNoLmg+CiAjaW5jbHVk
ZSA8d3RmL0Jsb2NrUHRyLmg+CkBAIC00MCwxMiArMzksNiBAQAogI2luY2x1ZGUgPHd0Zi9UaHJl
YWRTYWZlUmVmQ291bnRlZC5oPgogCiAjaWYgSEFWRShOV1BBUkFNRVRFUlNfVFJBQ0tFUl9BUEkp
Ci1TT0ZUX0xJTktfTElCUkFSWShsaWJuZXR3b3JrZXh0ZW5zaW9uKQotU09GVF9MSU5LX0NMQVNT
KGxpYm5ldHdvcmtleHRlbnNpb24sIE5FSGVscGVyVHJhY2tlckRpc3Bvc2l0aW9uX3QpCi1TT0ZU
X0xJTktfQ0xBU1MobGlibmV0d29ya2V4dGVuc2lvbiwgTkVIZWxwZXJUcmFja2VyQXBwSW5mb1Jl
ZikKLVNPRlRfTElOS19DTEFTUyhsaWJuZXR3b3JrZXh0ZW5zaW9uLCBORUhlbHBlclRyYWNrZXJE
b21haW5Db250ZXh0UmVmKQotU09GVF9MSU5LKGxpYm5ldHdvcmtleHRlbnNpb24sIE5FSGVscGVy
VHJhY2tlckdldERpc3Bvc2l0aW9uLCBORUhlbHBlclRyYWNrZXJEaXNwb3NpdGlvbl90KiwgKE5F
SGVscGVyVHJhY2tlckFwcEluZm9SZWYgKmFwcF9pbmZvX3JlZiwgQ0ZBcnJheVJlZiBkb21haW5z
LCBORUhlbHBlclRyYWNrZXJEb21haW5Db250ZXh0UmVmICp0cmFja2VyRG9tYWluQ29udGV4dFJl
ZiwgQ0ZJbmRleCAqdHJhY2tlckRvbWFpbkluZGV4KSwgKGFwcF9pbmZvX3JlZiwgZG9tYWlucywg
dHJhY2tlckRvbWFpbkNvbnRleHRSZWYsIHRyYWNrZXJEb21haW5JbmRleCkpCi0KIFNPRlRfTElO
S19MSUJSQVJZX09QVElPTkFMKGxpYm5ldHdvcmspCiBTT0ZUX0xJTktfT1BUSU9OQUwobGlibmV0
d29yaywgbndfcGFyYW1ldGVyc19hbGxvd19zaGFyaW5nX3BvcnRfd2l0aF9saXN0ZW5lciwgdm9p
ZCwgX19jZGVjbCwgKG53X3BhcmFtZXRlcnNfdCwgbndfbGlzdGVuZXJfdCkpCiAjZW5kaWYKQEAg
LTcyLDEwICs2NSw4IEBAIHByaXZhdGU6CiAKICAgICBXZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJ
ZGVudGlmaWVyIG1faWRlbnRpZmllcjsKICAgICBSZWY8SVBDOjpDb25uZWN0aW9uPiBtX2Nvbm5l
Y3Rpb247Ci0jaWYgSEFWRShOV1BBUkFNRVRFUlNfVFJBQ0tFUl9BUEkpCiAgICAgYm9vbCBtX2lz
Rmlyc3RQYXJ0eSB7IGZhbHNlIH07CiAgICAgYm9vbCBtX2lzS25vd25UcmFja2VyIHsgZmFsc2Ug
fTsKLSNlbmRpZgogICAgIGJvb2wgbV9zaG91bGRCeXBhc3NSZWxheSB7IGZhbHNlIH07CiAKICAg
ICBDU3RyaW5nIG1fc291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyOwpAQCAtMTQ5LDIz
ICsxNDAsMTEgQEAgc3RhdGljIHJ0Yzo6U29ja2V0QWRkcmVzcyBzb2NrZXRBZGRyZXNzRnJvbUlu
Y29taW5nQ29ubmVjdGlvbihud19jb25uZWN0aW9uX3QgY28KICAgICByZXR1cm4gcnRjOjpTb2Nr
ZXRBZGRyZXNzIHsgbndfZW5kcG9pbnRfZ2V0X2hvc3RuYW1lKGVuZHBvaW50LmdldCgpKSwgbndf
ZW5kcG9pbnRfZ2V0X3BvcnQoZW5kcG9pbnQuZ2V0KCkpIH07CiB9CiAKLSNpZiBIQVZFKE5XUEFS
QU1FVEVSU19UUkFDS0VSX0FQSSkKLXN0YXRpYyBib29sIGlzS25vd25UcmFja2VyKGNvbnN0IFdl
YkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJiBkb21haW4pCi17Ci0gICAgTlNBcnJheTxOU1N0cmlu
ZyAqPiAqZG9tYWlucyA9IEBbZG9tYWluLnN0cmluZygpXTsKLSAgICBORUhlbHBlclRyYWNrZXJE
b21haW5Db250ZXh0UmVmICpjb250ZXh0ID0gbmlsOwotICAgIENGSW5kZXggaW5kZXggPSAwOwot
ICAgIHJldHVybiAhIU5FSGVscGVyVHJhY2tlckdldERpc3Bvc2l0aW9uKG51bGxwdHIsIChDRkFy
cmF5UmVmKWRvbWFpbnMsIGNvbnRleHQsICZpbmRleCk7Ci19Ci0jZW5kaWYKLQogTmV0d29ya1JU
Q1VEUFNvY2tldENvY29hQ29ubmVjdGlvbnM6Ok5ldHdvcmtSVENVRFBTb2NrZXRDb2NvYUNvbm5l
Y3Rpb25zKFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tldElkZW50aWZpZXIgaWRlbnRpZmllciwgTmV0
d29ya1JUQ1Byb3ZpZGVyJiBydGNQcm92aWRlciwgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiBh
ZGRyZXNzLCBSZWY8SVBDOjpDb25uZWN0aW9uPiYmIGNvbm5lY3Rpb24sIFN0cmluZyYmIGF0dHJp
YnV0ZWRCdW5kbGVJZGVudGlmaWVyLCBib29sIGlzRmlyc3RQYXJ0eSwgYm9vbCBpc1JlbGF5RGlz
YWJsZWQsIGNvbnN0IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJiBkb21haW4pCiAgICAgOiBt
X2lkZW50aWZpZXIoaWRlbnRpZmllcikKICAgICAsIG1fY29ubmVjdGlvbihXVEZNb3ZlKGNvbm5l
Y3Rpb24pKQotI2lmIEhBVkUoTldQQVJBTUVURVJTX1RSQUNLRVJfQVBJKQogICAgICwgbV9pc0Zp
cnN0UGFydHkoaXNGaXJzdFBhcnR5KQogICAgICwgbV9pc0tub3duVHJhY2tlcihpc0tub3duVHJh
Y2tlcihkb21haW4pKQotI2VuZGlmCiAgICAgLCBtX3Nob3VsZEJ5cGFzc1JlbGF5KGlzUmVsYXlE
aXNhYmxlZCkKICAgICAsIG1fc291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKHJ0Y1By
b3ZpZGVyLmFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpKQogICAgICwgbV9zb3VyY2VBcHBs
aWNhdGlvbkF1ZGl0VG9rZW4ocnRjUHJvdmlkZXIuc291cmNlQXBwbGljYXRpb25BdWRpdFRva2Vu
KCkpCkBAIC0yNDUsNiArMjI0LDcgQEAgdm9pZCBOZXR3b3JrUlRDVURQU29ja2V0Q29jb2FDb25u
ZWN0aW9uczo6Y29uZmlndXJlUGFyYW1ldGVycyhud19wYXJhbWV0ZXJzX3QgcGEKICNlbmRpZgog
CiAgICAgc2V0TldQYXJhbWV0ZXJzQXBwbGljYXRpb25JZGVudGlmaWVycyhwYXJhbWV0ZXJzLCBt
X3NvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllci5kYXRhKCksIG1fc291cmNlQXBwbGlj
YXRpb25BdWRpdFRva2VuLCBtX2F0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyKTsKKyAgICBzZXRO
V1BhcmFtZXRlcnNUcmFja2VyT3B0aW9ucyhwYXJhbWV0ZXJzLCBtX3Nob3VsZEJ5cGFzc1JlbGF5
LCBtX2lzRmlyc3RQYXJ0eSwgbV9pc0tub3duVHJhY2tlcik7CiAKICAgICBud19wYXJhbWV0ZXJz
X3NldF9yZXVzZV9sb2NhbF9hZGRyZXNzKHBhcmFtZXRlcnMsIHRydWUpOwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1V0aWxpdGll
c0NvY29hLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRD
VXRpbGl0aWVzQ29jb2EuaAppbmRleCA2YzI1MzEwOGRkMzcuLmY3NGYxY2Y4NDUyZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1V0aWxp
dGllc0NvY29hLmgKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0
d29ya1JUQ1V0aWxpdGllc0NvY29hLmgKQEAgLTMxLDkgKzMxLDE1IEBACiAjaW5jbHVkZSA8b3B0
aW9uYWw+CiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KIAorbmFtZXNwYWNlIFdlYkNvcmUgewor
Y2xhc3MgUmVnaXN0cmFibGVEb21haW47Cit9CisKIG5hbWVzcGFjZSBXZWJLaXQgewogCiB2b2lk
IHNldE5XUGFyYW1ldGVyc0FwcGxpY2F0aW9uSWRlbnRpZmllcnMobndfcGFyYW1ldGVyc190LCBj
b25zdCBjaGFyKiBzb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIsIHN0ZDo6b3B0aW9u
YWw8YXVkaXRfdG9rZW5fdD4sIGNvbnN0IFN0cmluZyYgYXR0cmlidXRlZEJ1bmRsZUlkZW50aWZp
ZXIpOwordm9pZCBzZXROV1BhcmFtZXRlcnNUcmFja2VyT3B0aW9ucyhud19wYXJhbWV0ZXJzX3Qs
IGJvb2wgc2hvdWxkQnlwYXNzUmVsYXksIGJvb2wgaXNGaXJzdFBhcnR5LCBib29sIGlzS25vd25U
cmFja2VyKTsKK2Jvb2wgaXNLbm93blRyYWNrZXIoY29uc3QgV2ViQ29yZTo6UmVnaXN0cmFibGVE
b21haW4mKTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENVdGlsaXRpZXNDb2NvYS5tbSBi
L1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENVdGlsaXRpZXND
b2NvYS5tbQppbmRleCA1MjE2MDAxN2I4NzAuLjMxNDE3MWRjNWZmZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1V0aWxpdGllc0NvY29h
Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENV
dGlsaXRpZXNDb2NvYS5tbQpAQCAtMjgsMTAgKzI4LDE3IEBACiAKICNpZiBVU0UoTElCV0VCUlRD
KQogCisjaW1wb3J0IDxXZWJDb3JlL1JlZ2lzdHJhYmxlRG9tYWluLmg+CiAjaW1wb3J0IDx3dGYv
U29mdExpbmtpbmcuaD4KICNpbXBvcnQgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiAjaWYgSEFW
RShOV1BBUkFNRVRFUlNfVFJBQ0tFUl9BUEkpCitTT0ZUX0xJTktfTElCUkFSWShsaWJuZXR3b3Jr
ZXh0ZW5zaW9uKQorU09GVF9MSU5LX0NMQVNTKGxpYm5ldHdvcmtleHRlbnNpb24sIE5FSGVscGVy
VHJhY2tlckRpc3Bvc2l0aW9uX3QpCitTT0ZUX0xJTktfQ0xBU1MobGlibmV0d29ya2V4dGVuc2lv
biwgTkVIZWxwZXJUcmFja2VyQXBwSW5mb1JlZikKK1NPRlRfTElOS19DTEFTUyhsaWJuZXR3b3Jr
ZXh0ZW5zaW9uLCBORUhlbHBlclRyYWNrZXJEb21haW5Db250ZXh0UmVmKQorU09GVF9MSU5LKGxp
Ym5ldHdvcmtleHRlbnNpb24sIE5FSGVscGVyVHJhY2tlckdldERpc3Bvc2l0aW9uLCBORUhlbHBl
clRyYWNrZXJEaXNwb3NpdGlvbl90KiwgKE5FSGVscGVyVHJhY2tlckFwcEluZm9SZWYgKmFwcF9p
bmZvX3JlZiwgQ0ZBcnJheVJlZiBkb21haW5zLCBORUhlbHBlclRyYWNrZXJEb21haW5Db250ZXh0
UmVmICp0cmFja2VyRG9tYWluQ29udGV4dFJlZiwgQ0ZJbmRleCAqdHJhY2tlckRvbWFpbkluZGV4
KSwgKGFwcF9pbmZvX3JlZiwgZG9tYWlucywgdHJhY2tlckRvbWFpbkNvbnRleHRSZWYsIHRyYWNr
ZXJEb21haW5JbmRleCkpCisKIFNPRlRfTElOS19MSUJSQVJZX09QVElPTkFMKGxpYm5ldHdvcmsp
CiBTT0ZUX0xJTktfT1BUSU9OQUwobGlibmV0d29yaywgbndfcGFyYW1ldGVyc19zZXRfYXR0cmli
dXRlZF9idW5kbGVfaWRlbnRpZmllciwgdm9pZCwgX19jZGVjbCwgKG53X3BhcmFtZXRlcnNfdCwg
Y29uc3QgY2hhciopKQogI2VuZGlmCkBAIC01MSw2ICs1OCwyOCBAQCB2b2lkIHNldE5XUGFyYW1l
dGVyc0FwcGxpY2F0aW9uSWRlbnRpZmllcnMobndfcGFyYW1ldGVyc190IHBhcmFtZXRlcnMsIGNv
bnN0IGNoYQogI2VuZGlmCiB9CiAKK3ZvaWQgc2V0TldQYXJhbWV0ZXJzVHJhY2tlck9wdGlvbnMo
bndfcGFyYW1ldGVyc190IHBhcmFtZXRlcnMsIGJvb2wgc2hvdWxkQnlwYXNzUmVsYXksIGJvb2wg
aXNGaXJzdFBhcnR5LCBib29sIGlzS25vd25UcmFja2VyKQoreworICAgIGlmIChzaG91bGRCeXBh
c3NSZWxheSkKKyAgICAgICAgbndfcGFyYW1ldGVyc19zZXRfYWNjb3VudF9pZChwYXJhbWV0ZXJz
LCAiY29tLmFwcGxlLnNhZmFyaS5wZWVydG9wZWVyIik7CisjaWYgSEFWRShOV1BBUkFNRVRFUlNf
VFJBQ0tFUl9BUEkpCisgICAgbndfcGFyYW1ldGVyc19zZXRfaXNfdGhpcmRfcGFydHlfd2ViX2Nv
bnRlbnQocGFyYW1ldGVycywgIWlzRmlyc3RQYXJ0eSk7CisgICAgbndfcGFyYW1ldGVyc19zZXRf
aXNfa25vd25fdHJhY2tlcihwYXJhbWV0ZXJzLCBpc0tub3duVHJhY2tlcik7CisjZW5kaWYKK30K
KworYm9vbCBpc0tub3duVHJhY2tlcihjb25zdCBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiYg
ZG9tYWluKQoreworI2lmIEhBVkUoTldQQVJBTUVURVJTX1RSQUNLRVJfQVBJKQorICAgIE5TQXJy
YXk8TlNTdHJpbmcgKj4gKmRvbWFpbnMgPSBAW2RvbWFpbi5zdHJpbmcoKV07CisgICAgTkVIZWxw
ZXJUcmFja2VyRG9tYWluQ29udGV4dFJlZiAqY29udGV4dCA9IG5pbDsKKyAgICBDRkluZGV4IGlu
ZGV4ID0gMDsKKyAgICByZXR1cm4gISFORUhlbHBlclRyYWNrZXJHZXREaXNwb3NpdGlvbihudWxs
cHRyLCAoQ0ZBcnJheVJlZilkb21haW5zLCBjb250ZXh0LCAmaW5kZXgpOworI2Vsc2UKKyAgICBy
ZXR1cm4gZmFsc2U7CisjZW5kaWYKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CiAKICNlbmRp
ZiAvLyBVU0UoTElCV0VCUlRDKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L05ldHdvcmsvd2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyLmNwcCBiL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9MaWJXZWJSVENQcm92aWRlci5jcHAKaW5kZXggZjljNGE5
MGQ4MjFkLi43ZjQwNjI5ZTViMmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9OZXR3b3JrL3dlYnJ0Yy9MaWJXZWJSVENQcm92aWRlci5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL05ldHdvcmsvd2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyLmNwcApAQCAtMTI1
LDcgKzEyNSw3IEBAIHJ0Yzo6QXN5bmNQYWNrZXRTb2NrZXQqIFJUQ1NvY2tldEZhY3Rvcnk6OkNy
ZWF0ZVNlcnZlclRjcFNvY2tldChjb25zdCBydGM6OlNvY2tlCiAKIHJ0Yzo6QXN5bmNQYWNrZXRT
b2NrZXQqIFJUQ1NvY2tldEZhY3Rvcnk6OkNyZWF0ZUNsaWVudFRjcFNvY2tldChjb25zdCBydGM6
OlNvY2tldEFkZHJlc3MmIGxvY2FsQWRkcmVzcywgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiBy
ZW1vdGVBZGRyZXNzLCBjb25zdCBydGM6OlByb3h5SW5mbyYsIGNvbnN0IHN0ZDo6c3RyaW5nJiwg
Y29uc3QgcnRjOjpQYWNrZXRTb2NrZXRUY3BPcHRpb25zJiBvcHRpb25zKQogewotICAgIHJldHVy
biBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5saWJXZWJSVENOZXR3b3JrKCkuc29ja2V0RmFjdG9y
eSgpLmNyZWF0ZUNsaWVudFRjcFNvY2tldCh0aGlzLCBsb2NhbEFkZHJlc3MsIHJlbW90ZUFkZHJl
c3MsIFN0cmluZyB7IG1fdXNlckFnZW50IH0sIG9wdGlvbnMsIG1fcGFnZUlkZW50aWZpZXIsIG1f
aXNSZWxheURpc2FibGVkKTsKKyAgICByZXR1cm4gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkubGli
V2ViUlRDTmV0d29yaygpLnNvY2tldEZhY3RvcnkoKS5jcmVhdGVDbGllbnRUY3BTb2NrZXQodGhp
cywgbG9jYWxBZGRyZXNzLCByZW1vdGVBZGRyZXNzLCBTdHJpbmcgeyBtX3VzZXJBZ2VudCB9LCBv
cHRpb25zLCBtX3BhZ2VJZGVudGlmaWVyLCBtX2lzRmlyc3RQYXJ0eSwgbV9pc1JlbGF5RGlzYWJs
ZWQsIG1fZG9tYWluKTsKIH0KIAogcnRjOjpBc3luY1Jlc29sdmVySW50ZXJmYWNlKiBSVENTb2Nr
ZXRGYWN0b3J5OjpDcmVhdGVBc3luY1Jlc29sdmVyKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9MaWJXZWJSVENTb2NrZXRGYWN0b3J5LmNwcCBi
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9MaWJXZWJSVENTb2NrZXRG
YWN0b3J5LmNwcAppbmRleCA4MWUxNWU4ODY0YjYuLjFlYWFmMzVlZGExNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvd2VicnRjL0xpYldlYlJUQ1NvY2tldEZh
Y3RvcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9M
aWJXZWJSVENTb2NrZXRGYWN0b3J5LmNwcApAQCAtMTA0LDcgKzEwNCw3IEBAIHJ0Yzo6QXN5bmNQ
YWNrZXRTb2NrZXQqIExpYldlYlJUQ1NvY2tldEZhY3Rvcnk6OmNyZWF0ZVVkcFNvY2tldChjb25z
dCB2b2lkKiBzb2NrCiAgICAgcmV0dXJuIHNvY2tldC5yZWxlYXNlKCk7CiB9CiAKLXJ0Yzo6QXN5
bmNQYWNrZXRTb2NrZXQqIExpYldlYlJUQ1NvY2tldEZhY3Rvcnk6OmNyZWF0ZUNsaWVudFRjcFNv
Y2tldChjb25zdCB2b2lkKiBzb2NrZXRHcm91cCwgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiBs
b2NhbEFkZHJlc3MsIGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYgcmVtb3RlQWRkcmVzcywgU3Ry
aW5nJiYgdXNlckFnZW50LCBjb25zdCBydGM6OlBhY2tldFNvY2tldFRjcE9wdGlvbnMmIG9wdGlv
bnMsIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZUlkZW50aWZpZXIsIGJvb2wgaXNSZWxheURp
c2FibGVkKQorcnRjOjpBc3luY1BhY2tldFNvY2tldCogTGliV2ViUlRDU29ja2V0RmFjdG9yeTo6
Y3JlYXRlQ2xpZW50VGNwU29ja2V0KGNvbnN0IHZvaWQqIHNvY2tldEdyb3VwLCBjb25zdCBydGM6
OlNvY2tldEFkZHJlc3MmIGxvY2FsQWRkcmVzcywgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiBy
ZW1vdGVBZGRyZXNzLCBTdHJpbmcmJiB1c2VyQWdlbnQsIGNvbnN0IHJ0Yzo6UGFja2V0U29ja2V0
VGNwT3B0aW9ucyYgb3B0aW9ucywgV2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSWRlbnRpZmll
ciwgYm9vbCBpc0ZpcnN0UGFydHksIGJvb2wgaXNSZWxheURpc2FibGVkLCBjb25zdCBXZWJDb3Jl
OjpSZWdpc3RyYWJsZURvbWFpbiYgZG9tYWluKQogewogICAgIEFTU0VSVCghV1RGOjppc01haW5S
dW5Mb29wKCkpOwogCkBAIC0xMTMsMTMgKzExMywxMyBAQCBydGM6OkFzeW5jUGFja2V0U29ja2V0
KiBMaWJXZWJSVENTb2NrZXRGYWN0b3J5OjpjcmVhdGVDbGllbnRUY3BTb2NrZXQoY29uc3Qgdm9p
ZAogCiAgICAgLy8gRklYTUU6IFdlIG9ubHkgdHJhbnNmZXIgb3B0aW9ucy5vcHRzIGJ1dCBzaG91
bGQgYWxzbyBoYW5kbGUgb3RoZXIgbWVtYmVycy4KICAgICBpZiAobV9jb25uZWN0aW9uKQotICAg
ICAgICBtX2Nvbm5lY3Rpb24tPnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtSVENQcm92aWRlcjo6Q3Jl
YXRlQ2xpZW50VENQU29ja2V0KHNvY2tldC0+aWRlbnRpZmllcigpLCBSVENOZXR3b3JrOjpTb2Nr
ZXRBZGRyZXNzKHByZXBhcmVTb2NrZXRBZGRyZXNzKGxvY2FsQWRkcmVzcywgbV9kaXNhYmxlTm9u
TG9jYWxob3N0Q29ubmVjdGlvbnMpKSwgUlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyhwcmVwYXJl
U29ja2V0QWRkcmVzcyhyZW1vdGVBZGRyZXNzLCBtX2Rpc2FibGVOb25Mb2NhbGhvc3RDb25uZWN0
aW9ucykpLCB1c2VyQWdlbnQsIG9wdGlvbnMub3B0cywgcGFnZUlkZW50aWZpZXIsIGlzUmVsYXlE
aXNhYmxlZCksIDApOworICAgICAgICBtX2Nvbm5lY3Rpb24tPnNlbmQoTWVzc2FnZXM6Ok5ldHdv
cmtSVENQcm92aWRlcjo6Q3JlYXRlQ2xpZW50VENQU29ja2V0KHNvY2tldC0+aWRlbnRpZmllcigp
LCBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzKHByZXBhcmVTb2NrZXRBZGRyZXNzKGxvY2FsQWRk
cmVzcywgbV9kaXNhYmxlTm9uTG9jYWxob3N0Q29ubmVjdGlvbnMpKSwgUlRDTmV0d29yazo6U29j
a2V0QWRkcmVzcyhwcmVwYXJlU29ja2V0QWRkcmVzcyhyZW1vdGVBZGRyZXNzLCBtX2Rpc2FibGVO
b25Mb2NhbGhvc3RDb25uZWN0aW9ucykpLCB1c2VyQWdlbnQsIG9wdGlvbnMub3B0cywgcGFnZUlk
ZW50aWZpZXIsIGlzRmlyc3RQYXJ0eSwgaXNSZWxheURpc2FibGVkLCBkb21haW4pLCAwKTsKICAg
ICBlbHNlIHsKICAgICAgICAgY2FsbE9uTWFpblJ1bkxvb3AoW10gewogICAgICAgICAgICAgV2Vi
UHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCk7CiAg
ICAgICAgIH0pOwotICAgICAgICBtX3BlbmRpbmdNZXNzYWdlVGFza3MuYXBwZW5kKFtpZGVudGlm
aWVyID0gc29ja2V0LT5pZGVudGlmaWVyKCksIGxvY2FsQWRkcmVzcyA9IFJUQ05ldHdvcms6OlNv
Y2tldEFkZHJlc3MocHJlcGFyZVNvY2tldEFkZHJlc3MobG9jYWxBZGRyZXNzLCBtX2Rpc2FibGVO
b25Mb2NhbGhvc3RDb25uZWN0aW9ucykpLCByZW1vdGVBZGRyZXNzID0gUlRDTmV0d29yazo6U29j
a2V0QWRkcmVzcyhwcmVwYXJlU29ja2V0QWRkcmVzcyhyZW1vdGVBZGRyZXNzLCBtX2Rpc2FibGVO
b25Mb2NhbGhvc3RDb25uZWN0aW9ucykpLCB1c2VyQWdlbnQsIG9wdHMgPSBvcHRpb25zLm9wdHMs
IHBhZ2VJZGVudGlmaWVyLCBpc1JlbGF5RGlzYWJsZWRdKGF1dG8mIGNvbm5lY3Rpb24pIHsKLSAg
ICAgICAgICAgIGNvbm5lY3Rpb24uc2VuZChNZXNzYWdlczo6TmV0d29ya1JUQ1Byb3ZpZGVyOjpD
cmVhdGVDbGllbnRUQ1BTb2NrZXQoaWRlbnRpZmllciwgbG9jYWxBZGRyZXNzLCByZW1vdGVBZGRy
ZXNzLCB1c2VyQWdlbnQsIG9wdHMsIHBhZ2VJZGVudGlmaWVyLCBpc1JlbGF5RGlzYWJsZWQpLCAw
KTsKKyAgICAgICAgbV9wZW5kaW5nTWVzc2FnZVRhc2tzLmFwcGVuZChbaWRlbnRpZmllciA9IHNv
Y2tldC0+aWRlbnRpZmllcigpLCBsb2NhbEFkZHJlc3MgPSBSVENOZXR3b3JrOjpTb2NrZXRBZGRy
ZXNzKHByZXBhcmVTb2NrZXRBZGRyZXNzKGxvY2FsQWRkcmVzcywgbV9kaXNhYmxlTm9uTG9jYWxo
b3N0Q29ubmVjdGlvbnMpKSwgcmVtb3RlQWRkcmVzcyA9IFJUQ05ldHdvcms6OlNvY2tldEFkZHJl
c3MocHJlcGFyZVNvY2tldEFkZHJlc3MocmVtb3RlQWRkcmVzcywgbV9kaXNhYmxlTm9uTG9jYWxo
b3N0Q29ubmVjdGlvbnMpKSwgdXNlckFnZW50LCBvcHRzID0gb3B0aW9ucy5vcHRzLCBwYWdlSWRl
bnRpZmllciwgaXNGaXJzdFBhcnR5LCBpc1JlbGF5RGlzYWJsZWQsIGRvbWFpbl0oYXV0byYgY29u
bmVjdGlvbikgeworICAgICAgICAgICAgY29ubmVjdGlvbi5zZW5kKE1lc3NhZ2VzOjpOZXR3b3Jr
UlRDUHJvdmlkZXI6OkNyZWF0ZUNsaWVudFRDUFNvY2tldChpZGVudGlmaWVyLCBsb2NhbEFkZHJl
c3MsIHJlbW90ZUFkZHJlc3MsIHVzZXJBZ2VudCwgb3B0cywgcGFnZUlkZW50aWZpZXIsIGlzRmly
c3RQYXJ0eSwgaXNSZWxheURpc2FibGVkLCBkb21haW4pLCAwKTsKICAgICAgICAgfSk7CiAgICAg
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay93ZWJydGMv
TGliV2ViUlRDU29ja2V0RmFjdG9yeS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdv
cmsvd2VicnRjL0xpYldlYlJUQ1NvY2tldEZhY3RvcnkuaAppbmRleCBiZDE5OWNhNzExZGIuLmRm
MzI3ZmVkMmI3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsv
d2VicnRjL0xpYldlYlJUQ1NvY2tldEZhY3RvcnkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvTmV0d29yay93ZWJydGMvTGliV2ViUlRDU29ja2V0RmFjdG9yeS5oCkBAIC01NCw3ICs1
NCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGZvclNvY2tldEluR3JvdXAoY29uc3Qgdm9pZCogc29j
a2V0R3JvdXAsIGNvbnN0IEZ1bmN0aW9uPHZvaWQoTGliV2ViUlRDU29ja2V0Jik+Jik7CiAgICAg
cnRjOjpBc3luY1BhY2tldFNvY2tldCogY3JlYXRlVWRwU29ja2V0KGNvbnN0IHZvaWQqIHNvY2tl
dEdyb3VwLCBjb25zdCBydGM6OlNvY2tldEFkZHJlc3MmLCB1aW50MTZfdCBtaW5Qb3J0LCB1aW50
MTZfdCBtYXhQb3J0LCBXZWJQYWdlUHJveHlJZGVudGlmaWVyLCBib29sIGlzRmlyc3RQYXJ0eSwg
Ym9vbCBpc1JlbGF5RGlzYWJsZWQsIGNvbnN0IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJik7
CiAgICAgcnRjOjpBc3luY1BhY2tldFNvY2tldCogY3JlYXRlU2VydmVyVGNwU29ja2V0KGNvbnN0
IHZvaWQqIHNvY2tldEdyb3VwLCBjb25zdCBydGM6OlNvY2tldEFkZHJlc3MmLCB1aW50MTZfdCBt
aW5Qb3J0LCB1aW50MTZfdCBtYXhQb3J0LCBpbnQgb3B0aW9ucyk7Ci0gICAgcnRjOjpBc3luY1Bh
Y2tldFNvY2tldCogY3JlYXRlQ2xpZW50VGNwU29ja2V0KGNvbnN0IHZvaWQqIHNvY2tldEdyb3Vw
LCBjb25zdCBydGM6OlNvY2tldEFkZHJlc3MmIGxvY2FsQWRkcmVzcywgY29uc3QgcnRjOjpTb2Nr
ZXRBZGRyZXNzJiByZW1vdGVBZGRyZXNzLCBTdHJpbmcmJiB1c2VyQWdlbnQsIGNvbnN0IHJ0Yzo6
UGFja2V0U29ja2V0VGNwT3B0aW9ucyYsIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIsIGJvb2wgaXNS
ZWxheURpc2FibGVkKTsKKyAgICBydGM6OkFzeW5jUGFja2V0U29ja2V0KiBjcmVhdGVDbGllbnRU
Y3BTb2NrZXQoY29uc3Qgdm9pZCogc29ja2V0R3JvdXAsIGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVz
cyYgbG9jYWxBZGRyZXNzLCBjb25zdCBydGM6OlNvY2tldEFkZHJlc3MmIHJlbW90ZUFkZHJlc3Ms
IFN0cmluZyYmIHVzZXJBZ2VudCwgY29uc3QgcnRjOjpQYWNrZXRTb2NrZXRUY3BPcHRpb25zJiwg
V2ViUGFnZVByb3h5SWRlbnRpZmllciwgYm9vbCBpc0ZpcnN0UGFydHksIGJvb2wgaXNSZWxheURp
c2FibGVkLCBjb25zdCBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiYpOwogICAgIHJ0Yzo6QXN5
bmNQYWNrZXRTb2NrZXQqIGNyZWF0ZU5ld0Nvbm5lY3Rpb25Tb2NrZXQoTGliV2ViUlRDU29ja2V0
JiwgV2ViQ29yZTo6TGliV2ViUlRDU29ja2V0SWRlbnRpZmllciBuZXdDb25uZWN0aW9uU29ja2V0
SWRlbnRpZmllciwgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJik7CiAKICAgICBMaWJXZWJSVENS
ZXNvbHZlciogcmVzb2x2ZXIoTGliV2ViUlRDUmVzb2x2ZXJJZGVudGlmaWVyIGlkZW50aWZpZXIp
IHsgcmV0dXJuIG1fcmVzb2x2ZXJzLmdldChpZGVudGlmaWVyKTsgfQotLSAKMi4zMC4xIChBcHBs
ZSBHaXQtMTMwKQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>437508</attachid>
            <date>2021-09-07 08:23:32 -0700</date>
            <delta_ts>2021-09-09 00:11:44 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>26086</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">RnJvbSBmM2Q4YTc1ZmFkYjFkYTNjMDBlNDkzOWMzNWRkNzMzYTkyOTk4NjcxIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBZb3Vlbm4gRmFibGV0IDx5b3Vlbm5AYXBwbGUuY29tPgpEYXRl
OiBUaHUsIDIgU2VwIDIwMjEgMTQ6NTg6NDcgKzAyMDAKU3ViamVjdDogW1BBVENIIDEvM10gZml4
LTIyOTgwMQoKLS0tCiBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAg
ICAgfCAzMyArKysrKysrKysrKysrKysrKysrCiAuLi4vd2VicnRjL05ldHdvcmtSVENQcm92aWRl
ci5jcHAgICAgICAgICAgICAgfCAgNCArLS0KIC4uLi93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVy
LmggICAgICAgICAgICAgICB8ICAyICstCiAuLi4vd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5t
ZXNzYWdlcy5pbiAgICAgfCAgMiArLQogLi4uL3dlYnJ0Yy9OZXR3b3JrUlRDVENQU29ja2V0Q29j
b2EuaCAgICAgICAgIHwgIDQgKy0tCiAuLi4vd2VicnRjL05ldHdvcmtSVENUQ1BTb2NrZXRDb2Nv
YS5tbSAgICAgICAgfCAxMCArKystLS0KIC4uLi93ZWJydGMvTmV0d29ya1JUQ1VEUFNvY2tldENv
Y29hLm1tICAgICAgICB8IDI5ICstLS0tLS0tLS0tLS0tLS0KIC4uLi93ZWJydGMvTmV0d29ya1JU
Q1V0aWxpdGllc0NvY29hLmggICAgICAgICB8ICA2ICsrKysKIC4uLi93ZWJydGMvTmV0d29ya1JU
Q1V0aWxpdGllc0NvY29hLm1tICAgICAgICB8IDI5ICsrKysrKysrKysrKysrKysKIC4uLi9OZXR3
b3JrL3dlYnJ0Yy9MaWJXZWJSVENQcm92aWRlci5jcHAgICAgICB8ICAyICstCiAuLi4vTmV0d29y
ay93ZWJydGMvTGliV2ViUlRDU29ja2V0RmFjdG9yeS5jcHAgfCAgOCArKy0tLQogLi4uL05ldHdv
cmsvd2VicnRjL0xpYldlYlJUQ1NvY2tldEZhY3RvcnkuaCAgIHwgIDIgKy0KIDEyIGZpbGVzIGNo
YW5nZWQsIDg1IGluc2VydGlvbnMoKyksIDQ2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggYTNh
NzZhODQ1ZWZhLi5hNmI4NDJmMjI3YjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0zMzgsNiArMzM4LDM5IEBACiAK
IDIwMjEtMDktMDMgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCisgICAgICAg
IENhdGVnb3JpemUgV2ViUlRDIFRDUCBudyBjb25uZWN0aW9ucyBsaWtlIGRvbmUgZm9yIFdlYlJU
QyBVRFAgbncgY29ubmVjdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIyOTgwMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIE1vdmUgTmV0d29ya1JUQ1VEUFNvY2tldENvY29hIHRyYWNrZXIgcmVsYXRl
ZCBjb2RlIHRvIGl0cyBvd24gcm91dGluZSBpbiBOZXR3b3JrUlRDVXRpbGl0aWVzQ29jb2EuCisg
ICAgICAgIE1ha2UgdXNlIG9mIHRoYXQgcm91dGluZSBpbiBOZXR3b3JrUlRDVENQU29ja2V0Q29j
b2EuCisgICAgICAgIFRvIGRvIHNvLCB3ZSBuZWVkIHRvIHBhc3MgbW9yZSBpbmZvcm1hdGlvbiB3
aGVuIGNyZWF0aW5nIGEgY2xpZW50IFRDUCBzb2NrZXQgZnJvbSBXZWJQcm9jZXNzIHRvIE5ldHdv
cmtQcm9jZXNzLgorICAgICAgICBNYW51YWxseSB0ZXN0ZWQuCisKKyAgICAgICAgKiBOZXR3b3Jr
UHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
TmV0d29ya1JUQ1Byb3ZpZGVyOjpjcmVhdGVDbGllbnRUQ1BTb2NrZXQpOgorICAgICAgICAqIE5l
dHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJvdmlkZXIuaDoKKyAgICAgICAgKiBOZXR3
b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVyLm1lc3NhZ2VzLmluOgorICAgICAg
ICAqIE5ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVENQU29ja2V0Q29jb2EuaDoKKyAg
ICAgICAgKiBOZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1RDUFNvY2tldENvY29hLm1t
OgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUlRDVENQU29ja2V0Q29jb2E6OmNyZWF0ZUNsaWVu
dFRDUFNvY2tldCk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYTo6
TmV0d29ya1JUQ1RDUFNvY2tldENvY29hKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy93ZWJy
dGMvTmV0d29ya1JUQ1VEUFNvY2tldENvY29hLm1tOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
UlRDVURQU29ja2V0Q29jb2FDb25uZWN0aW9uczo6Y29uZmlndXJlUGFyYW1ldGVycyk6CisgICAg
ICAgIChXZWJLaXQ6OmlzS25vd25UcmFja2VyKTogRGVsZXRlZC4KKyAgICAgICAgKiBOZXR3b3Jr
UHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1V0aWxpdGllc0NvY29hLmg6CisgICAgICAgICogTmV0
d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENVdGlsaXRpZXNDb2NvYS5tbToKKyAgICAgICAg
KFdlYktpdDo6c2V0TldQYXJhbWV0ZXJzVHJhY2tlck9wdGlvbnMpOgorICAgICAgICAoV2ViS2l0
Ojppc0tub3duVHJhY2tlcik6CisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9M
aWJXZWJSVENQcm92aWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OlJUQ1NvY2tldEZhY3Rvcnk6
OkNyZWF0ZUNsaWVudFRjcFNvY2tldCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL3dl
YnJ0Yy9MaWJXZWJSVENTb2NrZXRGYWN0b3J5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6TGliV2Vi
UlRDU29ja2V0RmFjdG9yeTo6Y3JlYXRlQ2xpZW50VGNwU29ja2V0KToKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL05ldHdvcmsvd2VicnRjL0xpYldlYlJUQ1NvY2tldEZhY3RvcnkuaDoKKworMjAyMS0w
OS0wMiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CisKICAgICAgICAgRW5hYmxl
IFdlYlJUQyByZWxheSBmb3IgU2FmYXJpVmlld0NvbnRyb2xsZXIKICAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyOTc2OAogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJvdmlkZXIuY3BwIGIv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVyLmNw
cAppbmRleCBiNDEyZmZmYzkzZmUuLjM0MTk0N2EzYjg4NSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVyLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJvdmlkZXIuY3Bw
CkBAIC0yMDIsMTMgKzIwMiwxMyBAQCBydGM6OlByb3h5SW5mbyBOZXR3b3JrUlRDUHJvdmlkZXI6
OnByb3h5SW5mb0Zyb21TZXNzaW9uKGNvbnN0IFJUQ05ldHdvcms6OlNvY2tldAogfQogI2VuZGlm
CiAKLXZvaWQgTmV0d29ya1JUQ1Byb3ZpZGVyOjpjcmVhdGVDbGllbnRUQ1BTb2NrZXQoTGliV2Vi
UlRDU29ja2V0SWRlbnRpZmllciBpZGVudGlmaWVyLCBjb25zdCBSVENOZXR3b3JrOjpTb2NrZXRB
ZGRyZXNzJiBsb2NhbEFkZHJlc3MsIGNvbnN0IFJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MmIHJl
bW90ZUFkZHJlc3MsIFN0cmluZyYmIHVzZXJBZ2VudCwgaW50IG9wdGlvbnMsIFdlYlBhZ2VQcm94
eUlkZW50aWZpZXIgcGFnZUlkZW50aWZpZXIsIGJvb2wgaXNSZWxheURpc2FibGVkKQordm9pZCBO
ZXR3b3JrUlRDUHJvdmlkZXI6OmNyZWF0ZUNsaWVudFRDUFNvY2tldChMaWJXZWJSVENTb2NrZXRJ
ZGVudGlmaWVyIGlkZW50aWZpZXIsIGNvbnN0IFJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MmIGxv
Y2FsQWRkcmVzcywgY29uc3QgUlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyYgcmVtb3RlQWRkcmVz
cywgU3RyaW5nJiYgdXNlckFnZW50LCBpbnQgb3B0aW9ucywgV2ViUGFnZVByb3h5SWRlbnRpZmll
ciBwYWdlSWRlbnRpZmllciwgYm9vbCBpc0ZpcnN0UGFydHksIGJvb2wgaXNSZWxheURpc2FibGVk
LCBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiYmIGRvbWFpbikKIHsKICAgICBBU1NFUlQobV9y
dGNOZXR3b3JrVGhyZWFkLklzQ3VycmVudCgpKTsKIAogI2lmIFBMQVRGT1JNKENPQ09BKQogICAg
IGlmIChtX3BsYXRmb3JtVENQU29ja2V0c0VuYWJsZWQpIHsKLSAgICAgICAgaWYgKGF1dG8gc29j
a2V0ID0gTmV0d29ya1JUQ1RDUFNvY2tldENvY29hOjpjcmVhdGVDbGllbnRUQ1BTb2NrZXQoaWRl
bnRpZmllciwgKnRoaXMsIHJlbW90ZUFkZHJlc3MudmFsdWUsIG9wdGlvbnMsIGF0dHJpYnV0ZWRC
dW5kbGVJZGVudGlmaWVyRnJvbVBhZ2VJZGVudGlmaWVyKHBhZ2VJZGVudGlmaWVyKSwgaXNSZWxh
eURpc2FibGVkLCBtX2lwY0Nvbm5lY3Rpb24uY29weVJlZigpKSkgeworICAgICAgICBpZiAoYXV0
byBzb2NrZXQgPSBOZXR3b3JrUlRDVENQU29ja2V0Q29jb2E6OmNyZWF0ZUNsaWVudFRDUFNvY2tl
dChpZGVudGlmaWVyLCAqdGhpcywgcmVtb3RlQWRkcmVzcy52YWx1ZSwgb3B0aW9ucywgYXR0cmli
dXRlZEJ1bmRsZUlkZW50aWZpZXJGcm9tUGFnZUlkZW50aWZpZXIocGFnZUlkZW50aWZpZXIpLCBp
c0ZpcnN0UGFydHksIGlzUmVsYXlEaXNhYmxlZCwgZG9tYWluLCBtX2lwY0Nvbm5lY3Rpb24uY29w
eVJlZigpKSkgewogICAgICAgICAgICAgYWRkU29ja2V0KGlkZW50aWZpZXIsIFdURk1vdmUoc29j
a2V0KSk7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5oIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVyLmgKaW5k
ZXggZWIwN2JlMTk5MzY2Li4wOWEyMDU2OTdkNzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5oCisrKyBiL1NvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5oCkBAIC0xMTYs
NyArMTE2LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHN0YXJ0TGlzdGVuaW5nRm9ySVBDKCk7CiAK
ICAgICB2b2lkIGNyZWF0ZVVEUFNvY2tldChXZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlm
aWVyLCBjb25zdCBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzJiwgdWludDE2X3QsIHVpbnQxNl90
LCBXZWJQYWdlUHJveHlJZGVudGlmaWVyLCBib29sIGlzRmlyc3RQYXJ0eSwgYm9vbCBpc1JlbGF5
RGlzYWJsZWQsIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJiYpOwotICAgIHZvaWQgY3JlYXRl
Q2xpZW50VENQU29ja2V0KFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tldElkZW50aWZpZXIsIGNvbnN0
IFJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MmLCBjb25zdCBSVENOZXR3b3JrOjpTb2NrZXRBZGRy
ZXNzJiwgU3RyaW5nJiYgdXNlckFnZW50LCBpbnQsIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIsIGJv
b2wgaXNSZWxheURpc2FibGVkKTsKKyAgICB2b2lkIGNyZWF0ZUNsaWVudFRDUFNvY2tldChXZWJD
b3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyLCBjb25zdCBSVENOZXR3b3JrOjpTb2NrZXRB
ZGRyZXNzJiwgY29uc3QgUlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyYsIFN0cmluZyYmIHVzZXJB
Z2VudCwgaW50LCBXZWJQYWdlUHJveHlJZGVudGlmaWVyLCBib29sIGlzRmlyc3RQYXJ0eSwgYm9v
bCBpc1JlbGF5RGlzYWJsZWQsIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJiYpOwogICAgIHZv
aWQgY3JlYXRlU2VydmVyVENQU29ja2V0KFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tldElkZW50aWZp
ZXIsIGNvbnN0IFJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MmLCB1aW50MTZfdCBtaW5Qb3J0LCB1
aW50MTZfdCBtYXhQb3J0LCBpbnQpOwogICAgIHZvaWQgd3JhcE5ld1RDUENvbm5lY3Rpb24oV2Vi
Q29yZTo6TGliV2ViUlRDU29ja2V0SWRlbnRpZmllciBpZGVudGlmaWVyLCBXZWJDb3JlOjpMaWJX
ZWJSVENTb2NrZXRJZGVudGlmaWVyIG5ld0Nvbm5lY3Rpb25Tb2NrZXRJZGVudGlmaWVyKTsKICAg
ICB2b2lkIHNlbmRUb1NvY2tldChXZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyLCBj
b25zdCBJUEM6OkRhdGFSZWZlcmVuY2UmLCBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzJiYsIFJU
Q1BhY2tldE9wdGlvbnMmJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJvdmlkZXIubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0
L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJvdmlkZXIubWVzc2FnZXMuaW4KaW5k
ZXggYzJkOGIyOWJkZmE3Li42ODIwZWYzODQ0NTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92aWRlci5tZXNzYWdlcy5pbgorKysg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJvdmlkZXIu
bWVzc2FnZXMuaW4KQEAgLTI1LDcgKzI1LDcgQEAKIG1lc3NhZ2VzIC0+IE5ldHdvcmtSVENQcm92
aWRlciB7CiAgICAgQ3JlYXRlVURQU29ja2V0KFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tldElkZW50
aWZpZXIgaWRlbnRpZmllciwgV2ViS2l0OjpSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzIGxvY2Fs
QWRkcmVzcywgdWludDE2X3QgbWluUG9ydCwgdWludDE2X3QgbWF4UG9ydCwgV2ViS2l0OjpXZWJQ
YWdlUHJveHlJZGVudGlmaWVyIHBhZ2VJZGVudGlmaWVyLCBib29sIGlzRmlyc3RQYXJ0eSwgYm9v
bCBpc1JlbGF5RGlzYWJsZWQsIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluIGRvbWFpbikKICAg
ICBDcmVhdGVTZXJ2ZXJUQ1BTb2NrZXQoV2ViQ29yZTo6TGliV2ViUlRDU29ja2V0SWRlbnRpZmll
ciBpZGVudGlmaWVyLCBXZWJLaXQ6OlJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MgbG9jYWxBZGRy
ZXNzLCB1aW50MTZfdCBtaW5Qb3J0LCB1aW50MTZfdCBtYXhQb3J0LCBpbnQgb3B0aW9ucykKLSAg
ICBDcmVhdGVDbGllbnRUQ1BTb2NrZXQoV2ViQ29yZTo6TGliV2ViUlRDU29ja2V0SWRlbnRpZmll
ciBpZGVudGlmaWVyLCBXZWJLaXQ6OlJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MgbG9jYWxBZGRy
ZXNzLCBXZWJLaXQ6OlJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MgcmVtb3RlQWRkcmVzcywgU3Ry
aW5nIHVzZXJBZ2VudCwgaW50IG9wdGlvbnMsIFdlYktpdDo6V2ViUGFnZVByb3h5SWRlbnRpZmll
ciBwYWdlSWRlbnRpZmllciwgYm9vbCBpc1JlbGF5RGlzYWJsZWQpCisgICAgQ3JlYXRlQ2xpZW50
VENQU29ja2V0KFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tldElkZW50aWZpZXIgaWRlbnRpZmllciwg
V2ViS2l0OjpSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzIGxvY2FsQWRkcmVzcywgV2ViS2l0OjpS
VENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzIHJlbW90ZUFkZHJlc3MsIFN0cmluZyB1c2VyQWdlbnQs
IGludCBvcHRpb25zLCBXZWJLaXQ6OldlYlBhZ2VQcm94eUlkZW50aWZpZXIgcGFnZUlkZW50aWZp
ZXIsIGJvb2wgaXNGaXJzdFBhcnR5LCBib29sIGlzUmVsYXlEaXNhYmxlZCwgV2ViQ29yZTo6UmVn
aXN0cmFibGVEb21haW4gZG9tYWluKQogICAgIFdyYXBOZXdUQ1BDb25uZWN0aW9uKFdlYkNvcmU6
OkxpYldlYlJUQ1NvY2tldElkZW50aWZpZXIgaWRlbnRpZmllciwgV2ViQ29yZTo6TGliV2ViUlRD
U29ja2V0SWRlbnRpZmllciBuZXdDb25uZWN0aW9uU29ja2V0SWRlbnRpZmllcikKIAogICAgIHZv
aWQgU2V0UGxhdGZvcm1UQ1BTb2NrZXRzRW5hYmxlZChib29sIGVuYWJsZWQpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVENQU29ja2V0
Q29jb2EuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENU
Q1BTb2NrZXRDb2NvYS5oCmluZGV4IDJlMjkxZTEwNWIxOS4uM2RjZmFlNDNkOWY3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVENQU29j
a2V0Q29jb2EuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3
b3JrUlRDVENQU29ja2V0Q29jb2EuaApAQCAtMzksOSArMzksOSBAQCBuYW1lc3BhY2UgV2ViS2l0
IHsKIGNsYXNzIE5ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYSBmaW5hbCA6IHB1YmxpYyBOZXR3b3Jr
UlRDUHJvdmlkZXI6OlNvY2tldCB7CiAgICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJs
aWM6Ci0gICAgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxOZXR3b3JrUlRDUHJvdmlkZXI6OlNvY2tl
dD4gY3JlYXRlQ2xpZW50VENQU29ja2V0KFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tldElkZW50aWZp
ZXIsIE5ldHdvcmtSVENQcm92aWRlciYsIGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYsIGludCBv
cHRpb25zLCBjb25zdCBTdHJpbmcmIGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyLCBib29sIGlz
UmVsYXlEaXNhYmxlZCwgUmVmPElQQzo6Q29ubmVjdGlvbj4mJik7CisgICAgc3RhdGljIHN0ZDo6
dW5pcXVlX3B0cjxOZXR3b3JrUlRDUHJvdmlkZXI6OlNvY2tldD4gY3JlYXRlQ2xpZW50VENQU29j
a2V0KFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tldElkZW50aWZpZXIsIE5ldHdvcmtSVENQcm92aWRl
ciYsIGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYsIGludCBvcHRpb25zLCBjb25zdCBTdHJpbmcm
IGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyLCBib29sIGlzRmlyc3RQYXJ0eSwgYm9vbCBpc1Jl
bGF5RGlzYWJsZWQsIGNvbnN0IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJiwgUmVmPElQQzo6
Q29ubmVjdGlvbj4mJik7CiAKLSAgICBOZXR3b3JrUlRDVENQU29ja2V0Q29jb2EoV2ViQ29yZTo6
TGliV2ViUlRDU29ja2V0SWRlbnRpZmllciwgTmV0d29ya1JUQ1Byb3ZpZGVyJiwgY29uc3QgcnRj
OjpTb2NrZXRBZGRyZXNzJiwgaW50IG9wdGlvbnMsIGNvbnN0IFN0cmluZyYgYXR0cmlidXRlZEJ1
bmRsZUlkZW50aWZpZXIsIGJvb2wgaXNSZWxheURpc2FibGVkLCBSZWY8SVBDOjpDb25uZWN0aW9u
PiYmKTsKKyAgICBOZXR3b3JrUlRDVENQU29ja2V0Q29jb2EoV2ViQ29yZTo6TGliV2ViUlRDU29j
a2V0SWRlbnRpZmllciwgTmV0d29ya1JUQ1Byb3ZpZGVyJiwgY29uc3QgcnRjOjpTb2NrZXRBZGRy
ZXNzJiwgaW50IG9wdGlvbnMsIGNvbnN0IFN0cmluZyYgYXR0cmlidXRlZEJ1bmRsZUlkZW50aWZp
ZXIsIGJvb2wgaXNGaXJzdFBhcnR5LCBib29sIGlzUmVsYXlEaXNhYmxlZCwgY29uc3QgV2ViQ29y
ZTo6UmVnaXN0cmFibGVEb21haW4mLCBSZWY8SVBDOjpDb25uZWN0aW9uPiYmKTsKIAogcHJpdmF0
ZToKICAgICAvLyBOZXR3b3JrUlRDUHJvdmlkZXI6OlNvY2tldC4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYS5t
bSBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENUQ1BTb2Nr
ZXRDb2NvYS5tbQppbmRleCA1NzY0ODYwOGM5ZjIuLjk5NGQ5ZmE0MzVmNCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1RDUFNvY2tldENv
Y29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtS
VENUQ1BTb2NrZXRDb2NvYS5tbQpAQCAtNTEsMTIgKzUxLDEyIEBAIHN0YXRpYyBkaXNwYXRjaF9x
dWV1ZV90IHRjcFNvY2tldFF1ZXVlKCkKICAgICByZXR1cm4gcXVldWU7CiB9CiAKLXN0ZDo6dW5p
cXVlX3B0cjxOZXR3b3JrUlRDUHJvdmlkZXI6OlNvY2tldD4gTmV0d29ya1JUQ1RDUFNvY2tldENv
Y29hOjpjcmVhdGVDbGllbnRUQ1BTb2NrZXQoTGliV2ViUlRDU29ja2V0SWRlbnRpZmllciBpZGVu
dGlmaWVyLCBOZXR3b3JrUlRDUHJvdmlkZXImIHJ0Y1Byb3ZpZGVyLCBjb25zdCBydGM6OlNvY2tl
dEFkZHJlc3MmIHJlbW90ZUFkZHJlc3MsIGludCB0Y3BPcHRpb25zLCBjb25zdCBTdHJpbmcmIGF0
dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyLCBib29sIGlzUmVsYXlEaXNhYmxlZCwgUmVmPElQQzo6
Q29ubmVjdGlvbj4mJiBjb25uZWN0aW9uKQorc3RkOjp1bmlxdWVfcHRyPE5ldHdvcmtSVENQcm92
aWRlcjo6U29ja2V0PiBOZXR3b3JrUlRDVENQU29ja2V0Q29jb2E6OmNyZWF0ZUNsaWVudFRDUFNv
Y2tldChMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyIGlkZW50aWZpZXIsIE5ldHdvcmtSVENQcm92
aWRlciYgcnRjUHJvdmlkZXIsIGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYgcmVtb3RlQWRkcmVz
cywgaW50IHRjcE9wdGlvbnMsIGNvbnN0IFN0cmluZyYgYXR0cmlidXRlZEJ1bmRsZUlkZW50aWZp
ZXIsIGJvb2wgaXNGaXJzdFBhcnR5LCBib29sIGlzUmVsYXlEaXNhYmxlZCwgY29uc3QgV2ViQ29y
ZTo6UmVnaXN0cmFibGVEb21haW4mIGRvbWFpbiwgUmVmPElQQzo6Q29ubmVjdGlvbj4mJiBjb25u
ZWN0aW9uKQogewogICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgbWlncmF0ZSBzc2x0Y3AgY2FuZGlk
YXRlcywgbWF5YmUgc3VwcG9ydCBPUFRfVExTX0lOU0VDVVJFIGFzIHdlbGwuCiAgICAgaWYgKCh0
Y3BPcHRpb25zICYgcnRjOjpQYWNrZXRTb2NrZXRGYWN0b3J5OjpPUFRfVExTX0ZBS0UpIHx8ICh0
Y3BPcHRpb25zICYgcnRjOjpQYWNrZXRTb2NrZXRGYWN0b3J5OjpPUFRfVExTX0lOU0VDVVJFKSkK
ICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgcmV0dXJuIG1ha2VVbmlxdWU8TmV0d29ya1JU
Q1RDUFNvY2tldENvY29hPihpZGVudGlmaWVyLCBydGNQcm92aWRlciwgcmVtb3RlQWRkcmVzcywg
dGNwT3B0aW9ucywgYXR0cmlidXRlZEJ1bmRsZUlkZW50aWZpZXIsIGlzUmVsYXlEaXNhYmxlZCwg
V1RGTW92ZShjb25uZWN0aW9uKSk7CisgICAgcmV0dXJuIG1ha2VVbmlxdWU8TmV0d29ya1JUQ1RD
UFNvY2tldENvY29hPihpZGVudGlmaWVyLCBydGNQcm92aWRlciwgcmVtb3RlQWRkcmVzcywgdGNw
T3B0aW9ucywgYXR0cmlidXRlZEJ1bmRsZUlkZW50aWZpZXIsIGlzRmlyc3RQYXJ0eSwgaXNSZWxh
eURpc2FibGVkLCBkb21haW4sIFdURk1vdmUoY29ubmVjdGlvbikpOwogfQogCiBzdGF0aWMgaW5s
aW5lIHZvaWQgcHJvY2Vzc0luY29taW5nRGF0YShSZXRhaW5QdHI8bndfY29ubmVjdGlvbl90PiYm
IG53Q29ubmVjdGlvbiwgRnVuY3Rpb248VmVjdG9yPHVpbnQ4X3Q+KFZlY3Rvcjx1aW50OF90PiYm
KT4mJiBwcm9jZXNzRGF0YSwgVmVjdG9yPHVpbnQ4X3Q+JiYgYnVmZmVyID0geyB9KQpAQCAtODEs
NyArODEsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgcHJvY2Vzc0luY29taW5nRGF0YShSZXRhaW5Q
dHI8bndfY29ubmVjdGlvbl90PiYmIG53Q29ubmVjdGlvbgogICAgIH0pLmdldCgpKTsKIH0KIAot
TmV0d29ya1JUQ1RDUFNvY2tldENvY29hOjpOZXR3b3JrUlRDVENQU29ja2V0Q29jb2EoTGliV2Vi
UlRDU29ja2V0SWRlbnRpZmllciBpZGVudGlmaWVyLCBOZXR3b3JrUlRDUHJvdmlkZXImIHJ0Y1By
b3ZpZGVyLCBjb25zdCBydGM6OlNvY2tldEFkZHJlc3MmIHJlbW90ZUFkZHJlc3MsIGludCBvcHRp
b25zLCBjb25zdCBTdHJpbmcmIGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyLCBib29sIGlzUmVs
YXlEaXNhYmxlZCwgUmVmPElQQzo6Q29ubmVjdGlvbj4mJiBjb25uZWN0aW9uKQorTmV0d29ya1JU
Q1RDUFNvY2tldENvY29hOjpOZXR3b3JrUlRDVENQU29ja2V0Q29jb2EoTGliV2ViUlRDU29ja2V0
SWRlbnRpZmllciBpZGVudGlmaWVyLCBOZXR3b3JrUlRDUHJvdmlkZXImIHJ0Y1Byb3ZpZGVyLCBj
b25zdCBydGM6OlNvY2tldEFkZHJlc3MmIHJlbW90ZUFkZHJlc3MsIGludCBvcHRpb25zLCBjb25z
dCBTdHJpbmcmIGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyLCBib29sIGlzRmlyc3RQYXJ0eSwg
Ym9vbCBpc1JlbGF5RGlzYWJsZWQsIGNvbnN0IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJiBk
b21haW4sIFJlZjxJUEM6OkNvbm5lY3Rpb24+JiYgY29ubmVjdGlvbikKICAgICA6IG1faWRlbnRp
ZmllcihpZGVudGlmaWVyKQogICAgICwgbV9ydGNQcm92aWRlcihydGNQcm92aWRlcikKICAgICAs
IG1fY29ubmVjdGlvbihXVEZNb3ZlKGNvbm5lY3Rpb24pKQpAQCAtOTgsOSArOTgsNyBAQCBOZXR3
b3JrUlRDVENQU29ja2V0Q29jb2E6Ok5ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYShMaWJXZWJSVENT
b2NrZXRJZGVudGlmaWVyIGlkZQogICAgIH0pKTsKIAogICAgIHNldE5XUGFyYW1ldGVyc0FwcGxp
Y2F0aW9uSWRlbnRpZmllcnModGNwVExTLmdldCgpLCBydGNQcm92aWRlci5hcHBsaWNhdGlvbkJ1
bmRsZUlkZW50aWZpZXIoKSwgcnRjUHJvdmlkZXIuc291cmNlQXBwbGljYXRpb25BdWRpdFRva2Vu
KCksIGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyKTsKLQotICAgIGlmIChpc1JlbGF5RGlzYWJs
ZWQpCi0gICAgICAgIG53X3BhcmFtZXRlcnNfc2V0X2FjY291bnRfaWQodGNwVExTLmdldCgpLCAi
Y29tLmFwcGxlLnNhZmFyaS5wZWVydG9wZWVyIik7CisgICAgc2V0TldQYXJhbWV0ZXJzVHJhY2tl
ck9wdGlvbnModGNwVExTLmdldCgpLCBpc1JlbGF5RGlzYWJsZWQsIGlzRmlyc3RQYXJ0eSwgaXNL
bm93blRyYWNrZXIoZG9tYWluKSk7CiAKICAgICBtX253Q29ubmVjdGlvbiA9IGFkb3B0TlMobndf
Y29ubmVjdGlvbl9jcmVhdGUoaG9zdC5nZXQoKSwgdGNwVExTLmdldCgpKSk7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENVRFBTb2Nr
ZXRDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtS
VENVRFBTb2NrZXRDb2NvYS5tbQppbmRleCBiY2QwOTUzZjVlY2MuLmQyMDkyNGE2YzIzMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1VE
UFNvY2tldENvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRj
L05ldHdvcmtSVENVRFBTb2NrZXRDb2NvYS5tbQpAQCAtMzIsNyArMzIsNiBAQAogI2luY2x1ZGUg
IkxpYldlYlJUQ05ldHdvcmtNZXNzYWdlcy5oIgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKICNpbmNs
dWRlICJOV1BhcmFtZXRlcnNTUEkuaCIKLSNpbmNsdWRlIDxXZWJDb3JlL1JlZ2lzdHJhYmxlRG9t
YWluLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TVFVOTWVzc2FnZVBhcnNpbmcuaD4KICNpbmNsdWRl
IDxkaXNwYXRjaC9kaXNwYXRjaC5oPgogI2luY2x1ZGUgPHd0Zi9CbG9ja1B0ci5oPgpAQCAtNDAs
MTIgKzM5LDYgQEAKICNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVJlZkNvdW50ZWQuaD4KIAogI2lm
IEhBVkUoTldQQVJBTUVURVJTX1RSQUNLRVJfQVBJKQotU09GVF9MSU5LX0xJQlJBUlkobGlibmV0
d29ya2V4dGVuc2lvbikKLVNPRlRfTElOS19DTEFTUyhsaWJuZXR3b3JrZXh0ZW5zaW9uLCBORUhl
bHBlclRyYWNrZXJEaXNwb3NpdGlvbl90KQotU09GVF9MSU5LX0NMQVNTKGxpYm5ldHdvcmtleHRl
bnNpb24sIE5FSGVscGVyVHJhY2tlckFwcEluZm9SZWYpCi1TT0ZUX0xJTktfQ0xBU1MobGlibmV0
d29ya2V4dGVuc2lvbiwgTkVIZWxwZXJUcmFja2VyRG9tYWluQ29udGV4dFJlZikKLVNPRlRfTElO
SyhsaWJuZXR3b3JrZXh0ZW5zaW9uLCBORUhlbHBlclRyYWNrZXJHZXREaXNwb3NpdGlvbiwgTkVI
ZWxwZXJUcmFja2VyRGlzcG9zaXRpb25fdCosIChORUhlbHBlclRyYWNrZXJBcHBJbmZvUmVmICph
cHBfaW5mb19yZWYsIENGQXJyYXlSZWYgZG9tYWlucywgTkVIZWxwZXJUcmFja2VyRG9tYWluQ29u
dGV4dFJlZiAqdHJhY2tlckRvbWFpbkNvbnRleHRSZWYsIENGSW5kZXggKnRyYWNrZXJEb21haW5J
bmRleCksIChhcHBfaW5mb19yZWYsIGRvbWFpbnMsIHRyYWNrZXJEb21haW5Db250ZXh0UmVmLCB0
cmFja2VyRG9tYWluSW5kZXgpKQotCiBTT0ZUX0xJTktfTElCUkFSWV9PUFRJT05BTChsaWJuZXR3
b3JrKQogU09GVF9MSU5LX09QVElPTkFMKGxpYm5ldHdvcmssIG53X3BhcmFtZXRlcnNfYWxsb3df
c2hhcmluZ19wb3J0X3dpdGhfbGlzdGVuZXIsIHZvaWQsIF9fY2RlY2wsIChud19wYXJhbWV0ZXJz
X3QsIG53X2xpc3RlbmVyX3QpKQogI2VuZGlmCkBAIC03MiwxMCArNjUsOCBAQCBwcml2YXRlOgog
CiAgICAgV2ViQ29yZTo6TGliV2ViUlRDU29ja2V0SWRlbnRpZmllciBtX2lkZW50aWZpZXI7CiAg
ICAgUmVmPElQQzo6Q29ubmVjdGlvbj4gbV9jb25uZWN0aW9uOwotI2lmIEhBVkUoTldQQVJBTUVU
RVJTX1RSQUNLRVJfQVBJKQogICAgIGJvb2wgbV9pc0ZpcnN0UGFydHkgeyBmYWxzZSB9OwogICAg
IGJvb2wgbV9pc0tub3duVHJhY2tlciB7IGZhbHNlIH07Ci0jZW5kaWYKICAgICBib29sIG1fc2hv
dWxkQnlwYXNzUmVsYXkgeyBmYWxzZSB9OwogCiAgICAgQ1N0cmluZyBtX3NvdXJjZUFwcGxpY2F0
aW9uQnVuZGxlSWRlbnRpZmllcjsKQEAgLTE0OSwyMyArMTQwLDExIEBAIHN0YXRpYyBydGM6OlNv
Y2tldEFkZHJlc3Mgc29ja2V0QWRkcmVzc0Zyb21JbmNvbWluZ0Nvbm5lY3Rpb24obndfY29ubmVj
dGlvbl90IGNvCiAgICAgcmV0dXJuIHJ0Yzo6U29ja2V0QWRkcmVzcyB7IG53X2VuZHBvaW50X2dl
dF9ob3N0bmFtZShlbmRwb2ludC5nZXQoKSksIG53X2VuZHBvaW50X2dldF9wb3J0KGVuZHBvaW50
LmdldCgpKSB9OwogfQogCi0jaWYgSEFWRShOV1BBUkFNRVRFUlNfVFJBQ0tFUl9BUEkpCi1zdGF0
aWMgYm9vbCBpc0tub3duVHJhY2tlcihjb25zdCBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiYg
ZG9tYWluKQotewotICAgIE5TQXJyYXk8TlNTdHJpbmcgKj4gKmRvbWFpbnMgPSBAW2RvbWFpbi5z
dHJpbmcoKV07Ci0gICAgTkVIZWxwZXJUcmFja2VyRG9tYWluQ29udGV4dFJlZiAqY29udGV4dCA9
IG5pbDsKLSAgICBDRkluZGV4IGluZGV4ID0gMDsKLSAgICByZXR1cm4gISFORUhlbHBlclRyYWNr
ZXJHZXREaXNwb3NpdGlvbihudWxscHRyLCAoQ0ZBcnJheVJlZilkb21haW5zLCBjb250ZXh0LCAm
aW5kZXgpOwotfQotI2VuZGlmCi0KIE5ldHdvcmtSVENVRFBTb2NrZXRDb2NvYUNvbm5lY3Rpb25z
OjpOZXR3b3JrUlRDVURQU29ja2V0Q29jb2FDb25uZWN0aW9ucyhXZWJDb3JlOjpMaWJXZWJSVENT
b2NrZXRJZGVudGlmaWVyIGlkZW50aWZpZXIsIE5ldHdvcmtSVENQcm92aWRlciYgcnRjUHJvdmlk
ZXIsIGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYgYWRkcmVzcywgUmVmPElQQzo6Q29ubmVjdGlv
bj4mJiBjb25uZWN0aW9uLCBTdHJpbmcmJiBhdHRyaWJ1dGVkQnVuZGxlSWRlbnRpZmllciwgYm9v
bCBpc0ZpcnN0UGFydHksIGJvb2wgaXNSZWxheURpc2FibGVkLCBjb25zdCBXZWJDb3JlOjpSZWdp
c3RyYWJsZURvbWFpbiYgZG9tYWluKQogICAgIDogbV9pZGVudGlmaWVyKGlkZW50aWZpZXIpCiAg
ICAgLCBtX2Nvbm5lY3Rpb24oV1RGTW92ZShjb25uZWN0aW9uKSkKLSNpZiBIQVZFKE5XUEFSQU1F
VEVSU19UUkFDS0VSX0FQSSkKICAgICAsIG1faXNGaXJzdFBhcnR5KGlzRmlyc3RQYXJ0eSkKICAg
ICAsIG1faXNLbm93blRyYWNrZXIoaXNLbm93blRyYWNrZXIoZG9tYWluKSkKLSNlbmRpZgogICAg
ICwgbV9zaG91bGRCeXBhc3NSZWxheShpc1JlbGF5RGlzYWJsZWQpCiAgICAgLCBtX3NvdXJjZUFw
cGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcihydGNQcm92aWRlci5hcHBsaWNhdGlvbkJ1bmRsZUlk
ZW50aWZpZXIoKSkKICAgICAsIG1fc291cmNlQXBwbGljYXRpb25BdWRpdFRva2VuKHJ0Y1Byb3Zp
ZGVyLnNvdXJjZUFwcGxpY2F0aW9uQXVkaXRUb2tlbigpKQpAQCAtMjM3LDE0ICsyMTYsOCBAQCB2
b2lkIE5ldHdvcmtSVENVRFBTb2NrZXRDb2NvYUNvbm5lY3Rpb25zOjpjb25maWd1cmVQYXJhbWV0
ZXJzKG53X3BhcmFtZXRlcnNfdCBwYQogICAgIGF1dG8gb3B0aW9ucyA9IGFkb3B0TlMobndfcHJv
dG9jb2xfc3RhY2tfY29weV9pbnRlcm5ldF9wcm90b2NvbChwcm90b2NvbFN0YWNrLmdldCgpKSk7
CiAgICAgbndfaXBfb3B0aW9uc19zZXRfdmVyc2lvbihvcHRpb25zLmdldCgpLCB2ZXJzaW9uKTsK
IAotICAgIGlmIChtX3Nob3VsZEJ5cGFzc1JlbGF5KQotICAgICAgICBud19wYXJhbWV0ZXJzX3Nl
dF9hY2NvdW50X2lkKHBhcmFtZXRlcnMsICJjb20uYXBwbGUuc2FmYXJpLnBlZXJ0b3BlZXIiKTsK
LSNpZiBIQVZFKE5XUEFSQU1FVEVSU19UUkFDS0VSX0FQSSkKLSAgICBud19wYXJhbWV0ZXJzX3Nl
dF9pc190aGlyZF9wYXJ0eV93ZWJfY29udGVudChwYXJhbWV0ZXJzLCAhbV9pc0ZpcnN0UGFydHkp
OwotICAgIG53X3BhcmFtZXRlcnNfc2V0X2lzX2tub3duX3RyYWNrZXIocGFyYW1ldGVycywgbV9p
c0tub3duVHJhY2tlcik7Ci0jZW5kaWYKLQogICAgIHNldE5XUGFyYW1ldGVyc0FwcGxpY2F0aW9u
SWRlbnRpZmllcnMocGFyYW1ldGVycywgbV9zb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZp
ZXIuZGF0YSgpLCBtX3NvdXJjZUFwcGxpY2F0aW9uQXVkaXRUb2tlbiwgbV9hdHRyaWJ1dGVkQnVu
ZGxlSWRlbnRpZmllcik7CisgICAgc2V0TldQYXJhbWV0ZXJzVHJhY2tlck9wdGlvbnMocGFyYW1l
dGVycywgbV9zaG91bGRCeXBhc3NSZWxheSwgbV9pc0ZpcnN0UGFydHksIG1faXNLbm93blRyYWNr
ZXIpOwogCiAgICAgbndfcGFyYW1ldGVyc19zZXRfcmV1c2VfbG9jYWxfYWRkcmVzcyhwYXJhbWV0
ZXJzLCB0cnVlKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mv
d2VicnRjL05ldHdvcmtSVENVdGlsaXRpZXNDb2NvYS5oIGIvU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1V0aWxpdGllc0NvY29hLmgKaW5kZXggNmMyNTMxMDhk
ZDM3Li5mNzRmMWNmODQ1MmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3Mvd2VicnRjL05ldHdvcmtSVENVdGlsaXRpZXNDb2NvYS5oCisrKyBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENVdGlsaXRpZXNDb2NvYS5oCkBAIC0zMSw5
ICszMSwxNSBAQAogI2luY2x1ZGUgPG9wdGlvbmFsPgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+
CiAKK25hbWVzcGFjZSBXZWJDb3JlIHsKK2NsYXNzIFJlZ2lzdHJhYmxlRG9tYWluOworfQorCiBu
YW1lc3BhY2UgV2ViS2l0IHsKIAogdm9pZCBzZXROV1BhcmFtZXRlcnNBcHBsaWNhdGlvbklkZW50
aWZpZXJzKG53X3BhcmFtZXRlcnNfdCwgY29uc3QgY2hhciogc291cmNlQXBwbGljYXRpb25CdW5k
bGVJZGVudGlmaWVyLCBzdGQ6Om9wdGlvbmFsPGF1ZGl0X3Rva2VuX3Q+LCBjb25zdCBTdHJpbmcm
IGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyKTsKK3ZvaWQgc2V0TldQYXJhbWV0ZXJzVHJhY2tl
ck9wdGlvbnMobndfcGFyYW1ldGVyc190LCBib29sIHNob3VsZEJ5cGFzc1JlbGF5LCBib29sIGlz
Rmlyc3RQYXJ0eSwgYm9vbCBpc0tub3duVHJhY2tlcik7Citib29sIGlzS25vd25UcmFja2VyKGNv
bnN0IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJik7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktp
dAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3
b3JrUlRDVXRpbGl0aWVzQ29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dl
YnJ0Yy9OZXR3b3JrUlRDVXRpbGl0aWVzQ29jb2EubW0KaW5kZXggNTIxNjAwMTdiODcwLi4zMTQx
NzFkYzVmZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRj
L05ldHdvcmtSVENVdGlsaXRpZXNDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQ
cm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVXRpbGl0aWVzQ29jb2EubW0KQEAgLTI4LDEwICsyOCwx
NyBAQAogCiAjaWYgVVNFKExJQldFQlJUQykKIAorI2ltcG9ydCA8V2ViQ29yZS9SZWdpc3RyYWJs
ZURvbWFpbi5oPgogI2ltcG9ydCA8d3RmL1NvZnRMaW5raW5nLmg+CiAjaW1wb3J0IDx3dGYvdGV4
dC9XVEZTdHJpbmcuaD4KIAogI2lmIEhBVkUoTldQQVJBTUVURVJTX1RSQUNLRVJfQVBJKQorU09G
VF9MSU5LX0xJQlJBUlkobGlibmV0d29ya2V4dGVuc2lvbikKK1NPRlRfTElOS19DTEFTUyhsaWJu
ZXR3b3JrZXh0ZW5zaW9uLCBORUhlbHBlclRyYWNrZXJEaXNwb3NpdGlvbl90KQorU09GVF9MSU5L
X0NMQVNTKGxpYm5ldHdvcmtleHRlbnNpb24sIE5FSGVscGVyVHJhY2tlckFwcEluZm9SZWYpCitT
T0ZUX0xJTktfQ0xBU1MobGlibmV0d29ya2V4dGVuc2lvbiwgTkVIZWxwZXJUcmFja2VyRG9tYWlu
Q29udGV4dFJlZikKK1NPRlRfTElOSyhsaWJuZXR3b3JrZXh0ZW5zaW9uLCBORUhlbHBlclRyYWNr
ZXJHZXREaXNwb3NpdGlvbiwgTkVIZWxwZXJUcmFja2VyRGlzcG9zaXRpb25fdCosIChORUhlbHBl
clRyYWNrZXJBcHBJbmZvUmVmICphcHBfaW5mb19yZWYsIENGQXJyYXlSZWYgZG9tYWlucywgTkVI
ZWxwZXJUcmFja2VyRG9tYWluQ29udGV4dFJlZiAqdHJhY2tlckRvbWFpbkNvbnRleHRSZWYsIENG
SW5kZXggKnRyYWNrZXJEb21haW5JbmRleCksIChhcHBfaW5mb19yZWYsIGRvbWFpbnMsIHRyYWNr
ZXJEb21haW5Db250ZXh0UmVmLCB0cmFja2VyRG9tYWluSW5kZXgpKQorCiBTT0ZUX0xJTktfTElC
UkFSWV9PUFRJT05BTChsaWJuZXR3b3JrKQogU09GVF9MSU5LX09QVElPTkFMKGxpYm5ldHdvcmss
IG53X3BhcmFtZXRlcnNfc2V0X2F0dHJpYnV0ZWRfYnVuZGxlX2lkZW50aWZpZXIsIHZvaWQsIF9f
Y2RlY2wsIChud19wYXJhbWV0ZXJzX3QsIGNvbnN0IGNoYXIqKSkKICNlbmRpZgpAQCAtNTEsNiAr
NTgsMjggQEAgdm9pZCBzZXROV1BhcmFtZXRlcnNBcHBsaWNhdGlvbklkZW50aWZpZXJzKG53X3Bh
cmFtZXRlcnNfdCBwYXJhbWV0ZXJzLCBjb25zdCBjaGEKICNlbmRpZgogfQogCit2b2lkIHNldE5X
UGFyYW1ldGVyc1RyYWNrZXJPcHRpb25zKG53X3BhcmFtZXRlcnNfdCBwYXJhbWV0ZXJzLCBib29s
IHNob3VsZEJ5cGFzc1JlbGF5LCBib29sIGlzRmlyc3RQYXJ0eSwgYm9vbCBpc0tub3duVHJhY2tl
cikKK3sKKyAgICBpZiAoc2hvdWxkQnlwYXNzUmVsYXkpCisgICAgICAgIG53X3BhcmFtZXRlcnNf
c2V0X2FjY291bnRfaWQocGFyYW1ldGVycywgImNvbS5hcHBsZS5zYWZhcmkucGVlcnRvcGVlciIp
OworI2lmIEhBVkUoTldQQVJBTUVURVJTX1RSQUNLRVJfQVBJKQorICAgIG53X3BhcmFtZXRlcnNf
c2V0X2lzX3RoaXJkX3BhcnR5X3dlYl9jb250ZW50KHBhcmFtZXRlcnMsICFpc0ZpcnN0UGFydHkp
OworICAgIG53X3BhcmFtZXRlcnNfc2V0X2lzX2tub3duX3RyYWNrZXIocGFyYW1ldGVycywgaXNL
bm93blRyYWNrZXIpOworI2VuZGlmCit9CisKK2Jvb2wgaXNLbm93blRyYWNrZXIoY29uc3QgV2Vi
Q29yZTo6UmVnaXN0cmFibGVEb21haW4mIGRvbWFpbikKK3sKKyNpZiBIQVZFKE5XUEFSQU1FVEVS
U19UUkFDS0VSX0FQSSkKKyAgICBOU0FycmF5PE5TU3RyaW5nICo+ICpkb21haW5zID0gQFtkb21h
aW4uc3RyaW5nKCldOworICAgIE5FSGVscGVyVHJhY2tlckRvbWFpbkNvbnRleHRSZWYgKmNvbnRl
eHQgPSBuaWw7CisgICAgQ0ZJbmRleCBpbmRleCA9IDA7CisgICAgcmV0dXJuICEhTkVIZWxwZXJU
cmFja2VyR2V0RGlzcG9zaXRpb24obnVsbHB0ciwgKENGQXJyYXlSZWYpZG9tYWlucywgY29udGV4
dCwgJmluZGV4KTsKKyNlbHNlCisgICAgcmV0dXJuIGZhbHNlOworI2VuZGlmCit9CisKIH0gLy8g
bmFtZXNwYWNlIFdlYktpdAogCiAjZW5kaWYgLy8gVVNFKExJQldFQlJUQykKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9MaWJXZWJSVENQcm92aWRl
ci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay93ZWJydGMvTGliV2ViUlRD
UHJvdmlkZXIuY3BwCmluZGV4IGY5YzRhOTBkODIxZC4uN2Y0MDYyOWU1YjJiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay93ZWJydGMvTGliV2ViUlRDUHJvdmlk
ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9MaWJX
ZWJSVENQcm92aWRlci5jcHAKQEAgLTEyNSw3ICsxMjUsNyBAQCBydGM6OkFzeW5jUGFja2V0U29j
a2V0KiBSVENTb2NrZXRGYWN0b3J5OjpDcmVhdGVTZXJ2ZXJUY3BTb2NrZXQoY29uc3QgcnRjOjpT
b2NrZQogCiBydGM6OkFzeW5jUGFja2V0U29ja2V0KiBSVENTb2NrZXRGYWN0b3J5OjpDcmVhdGVD
bGllbnRUY3BTb2NrZXQoY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiBsb2NhbEFkZHJlc3MsIGNv
bnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYgcmVtb3RlQWRkcmVzcywgY29uc3QgcnRjOjpQcm94eUlu
Zm8mLCBjb25zdCBzdGQ6OnN0cmluZyYsIGNvbnN0IHJ0Yzo6UGFja2V0U29ja2V0VGNwT3B0aW9u
cyYgb3B0aW9ucykKIHsKLSAgICByZXR1cm4gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkubGliV2Vi
UlRDTmV0d29yaygpLnNvY2tldEZhY3RvcnkoKS5jcmVhdGVDbGllbnRUY3BTb2NrZXQodGhpcywg
bG9jYWxBZGRyZXNzLCByZW1vdGVBZGRyZXNzLCBTdHJpbmcgeyBtX3VzZXJBZ2VudCB9LCBvcHRp
b25zLCBtX3BhZ2VJZGVudGlmaWVyLCBtX2lzUmVsYXlEaXNhYmxlZCk7CisgICAgcmV0dXJuIFdl
YlByb2Nlc3M6OnNpbmdsZXRvbigpLmxpYldlYlJUQ05ldHdvcmsoKS5zb2NrZXRGYWN0b3J5KCku
Y3JlYXRlQ2xpZW50VGNwU29ja2V0KHRoaXMsIGxvY2FsQWRkcmVzcywgcmVtb3RlQWRkcmVzcywg
U3RyaW5nIHsgbV91c2VyQWdlbnQgfSwgb3B0aW9ucywgbV9wYWdlSWRlbnRpZmllciwgbV9pc0Zp
cnN0UGFydHksIG1faXNSZWxheURpc2FibGVkLCBtX2RvbWFpbik7CiB9CiAKIHJ0Yzo6QXN5bmNS
ZXNvbHZlckludGVyZmFjZSogUlRDU29ja2V0RmFjdG9yeTo6Q3JlYXRlQXN5bmNSZXNvbHZlcigp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay93ZWJydGMvTGli
V2ViUlRDU29ja2V0RmFjdG9yeS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29y
ay93ZWJydGMvTGliV2ViUlRDU29ja2V0RmFjdG9yeS5jcHAKaW5kZXggODFlMTVlODg2NGI2Li4x
ZWFhZjM1ZWRhMTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3Jr
L3dlYnJ0Yy9MaWJXZWJSVENTb2NrZXRGYWN0b3J5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvTmV0d29yay93ZWJydGMvTGliV2ViUlRDU29ja2V0RmFjdG9yeS5jcHAKQEAgLTEw
NCw3ICsxMDQsNyBAQCBydGM6OkFzeW5jUGFja2V0U29ja2V0KiBMaWJXZWJSVENTb2NrZXRGYWN0
b3J5OjpjcmVhdGVVZHBTb2NrZXQoY29uc3Qgdm9pZCogc29jawogICAgIHJldHVybiBzb2NrZXQu
cmVsZWFzZSgpOwogfQogCi1ydGM6OkFzeW5jUGFja2V0U29ja2V0KiBMaWJXZWJSVENTb2NrZXRG
YWN0b3J5OjpjcmVhdGVDbGllbnRUY3BTb2NrZXQoY29uc3Qgdm9pZCogc29ja2V0R3JvdXAsIGNv
bnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYgbG9jYWxBZGRyZXNzLCBjb25zdCBydGM6OlNvY2tldEFk
ZHJlc3MmIHJlbW90ZUFkZHJlc3MsIFN0cmluZyYmIHVzZXJBZ2VudCwgY29uc3QgcnRjOjpQYWNr
ZXRTb2NrZXRUY3BPcHRpb25zJiBvcHRpb25zLCBXZWJQYWdlUHJveHlJZGVudGlmaWVyIHBhZ2VJ
ZGVudGlmaWVyLCBib29sIGlzUmVsYXlEaXNhYmxlZCkKK3J0Yzo6QXN5bmNQYWNrZXRTb2NrZXQq
IExpYldlYlJUQ1NvY2tldEZhY3Rvcnk6OmNyZWF0ZUNsaWVudFRjcFNvY2tldChjb25zdCB2b2lk
KiBzb2NrZXRHcm91cCwgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiBsb2NhbEFkZHJlc3MsIGNv
bnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYgcmVtb3RlQWRkcmVzcywgU3RyaW5nJiYgdXNlckFnZW50
LCBjb25zdCBydGM6OlBhY2tldFNvY2tldFRjcE9wdGlvbnMmIG9wdGlvbnMsIFdlYlBhZ2VQcm94
eUlkZW50aWZpZXIgcGFnZUlkZW50aWZpZXIsIGJvb2wgaXNGaXJzdFBhcnR5LCBib29sIGlzUmVs
YXlEaXNhYmxlZCwgY29uc3QgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4mIGRvbWFpbikKIHsK
ICAgICBBU1NFUlQoIVdURjo6aXNNYWluUnVuTG9vcCgpKTsKIApAQCAtMTEzLDEzICsxMTMsMTMg
QEAgcnRjOjpBc3luY1BhY2tldFNvY2tldCogTGliV2ViUlRDU29ja2V0RmFjdG9yeTo6Y3JlYXRl
Q2xpZW50VGNwU29ja2V0KGNvbnN0IHZvaWQKIAogICAgIC8vIEZJWE1FOiBXZSBvbmx5IHRyYW5z
ZmVyIG9wdGlvbnMub3B0cyBidXQgc2hvdWxkIGFsc28gaGFuZGxlIG90aGVyIG1lbWJlcnMuCiAg
ICAgaWYgKG1fY29ubmVjdGlvbikKLSAgICAgICAgbV9jb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2Vz
OjpOZXR3b3JrUlRDUHJvdmlkZXI6OkNyZWF0ZUNsaWVudFRDUFNvY2tldChzb2NrZXQtPmlkZW50
aWZpZXIoKSwgUlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyhwcmVwYXJlU29ja2V0QWRkcmVzcyhs
b2NhbEFkZHJlc3MsIG1fZGlzYWJsZU5vbkxvY2FsaG9zdENvbm5lY3Rpb25zKSksIFJUQ05ldHdv
cms6OlNvY2tldEFkZHJlc3MocHJlcGFyZVNvY2tldEFkZHJlc3MocmVtb3RlQWRkcmVzcywgbV9k
aXNhYmxlTm9uTG9jYWxob3N0Q29ubmVjdGlvbnMpKSwgdXNlckFnZW50LCBvcHRpb25zLm9wdHMs
IHBhZ2VJZGVudGlmaWVyLCBpc1JlbGF5RGlzYWJsZWQpLCAwKTsKKyAgICAgICAgbV9jb25uZWN0
aW9uLT5zZW5kKE1lc3NhZ2VzOjpOZXR3b3JrUlRDUHJvdmlkZXI6OkNyZWF0ZUNsaWVudFRDUFNv
Y2tldChzb2NrZXQtPmlkZW50aWZpZXIoKSwgUlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyhwcmVw
YXJlU29ja2V0QWRkcmVzcyhsb2NhbEFkZHJlc3MsIG1fZGlzYWJsZU5vbkxvY2FsaG9zdENvbm5l
Y3Rpb25zKSksIFJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MocHJlcGFyZVNvY2tldEFkZHJlc3Mo
cmVtb3RlQWRkcmVzcywgbV9kaXNhYmxlTm9uTG9jYWxob3N0Q29ubmVjdGlvbnMpKSwgdXNlckFn
ZW50LCBvcHRpb25zLm9wdHMsIHBhZ2VJZGVudGlmaWVyLCBpc0ZpcnN0UGFydHksIGlzUmVsYXlE
aXNhYmxlZCwgZG9tYWluKSwgMCk7CiAgICAgZWxzZSB7CiAgICAgICAgIGNhbGxPbk1haW5SdW5M
b29wKFtdIHsKICAgICAgICAgICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdv
cmtQcm9jZXNzQ29ubmVjdGlvbigpOwogICAgICAgICB9KTsKLSAgICAgICAgbV9wZW5kaW5nTWVz
c2FnZVRhc2tzLmFwcGVuZChbaWRlbnRpZmllciA9IHNvY2tldC0+aWRlbnRpZmllcigpLCBsb2Nh
bEFkZHJlc3MgPSBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzKHByZXBhcmVTb2NrZXRBZGRyZXNz
KGxvY2FsQWRkcmVzcywgbV9kaXNhYmxlTm9uTG9jYWxob3N0Q29ubmVjdGlvbnMpKSwgcmVtb3Rl
QWRkcmVzcyA9IFJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MocHJlcGFyZVNvY2tldEFkZHJlc3Mo
cmVtb3RlQWRkcmVzcywgbV9kaXNhYmxlTm9uTG9jYWxob3N0Q29ubmVjdGlvbnMpKSwgdXNlckFn
ZW50LCBvcHRzID0gb3B0aW9ucy5vcHRzLCBwYWdlSWRlbnRpZmllciwgaXNSZWxheURpc2FibGVk
XShhdXRvJiBjb25uZWN0aW9uKSB7Ci0gICAgICAgICAgICBjb25uZWN0aW9uLnNlbmQoTWVzc2Fn
ZXM6Ok5ldHdvcmtSVENQcm92aWRlcjo6Q3JlYXRlQ2xpZW50VENQU29ja2V0KGlkZW50aWZpZXIs
IGxvY2FsQWRkcmVzcywgcmVtb3RlQWRkcmVzcywgdXNlckFnZW50LCBvcHRzLCBwYWdlSWRlbnRp
ZmllciwgaXNSZWxheURpc2FibGVkKSwgMCk7CisgICAgICAgIG1fcGVuZGluZ01lc3NhZ2VUYXNr
cy5hcHBlbmQoW2lkZW50aWZpZXIgPSBzb2NrZXQtPmlkZW50aWZpZXIoKSwgbG9jYWxBZGRyZXNz
ID0gUlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyhwcmVwYXJlU29ja2V0QWRkcmVzcyhsb2NhbEFk
ZHJlc3MsIG1fZGlzYWJsZU5vbkxvY2FsaG9zdENvbm5lY3Rpb25zKSksIHJlbW90ZUFkZHJlc3Mg
PSBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzKHByZXBhcmVTb2NrZXRBZGRyZXNzKHJlbW90ZUFk
ZHJlc3MsIG1fZGlzYWJsZU5vbkxvY2FsaG9zdENvbm5lY3Rpb25zKSksIHVzZXJBZ2VudCwgb3B0
cyA9IG9wdGlvbnMub3B0cywgcGFnZUlkZW50aWZpZXIsIGlzRmlyc3RQYXJ0eSwgaXNSZWxheURp
c2FibGVkLCBkb21haW5dKGF1dG8mIGNvbm5lY3Rpb24pIHsKKyAgICAgICAgICAgIGNvbm5lY3Rp
b24uc2VuZChNZXNzYWdlczo6TmV0d29ya1JUQ1Byb3ZpZGVyOjpDcmVhdGVDbGllbnRUQ1BTb2Nr
ZXQoaWRlbnRpZmllciwgbG9jYWxBZGRyZXNzLCByZW1vdGVBZGRyZXNzLCB1c2VyQWdlbnQsIG9w
dHMsIHBhZ2VJZGVudGlmaWVyLCBpc0ZpcnN0UGFydHksIGlzUmVsYXlEaXNhYmxlZCwgZG9tYWlu
KSwgMCk7CiAgICAgICAgIH0pOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9X
ZWJQcm9jZXNzL05ldHdvcmsvd2VicnRjL0xpYldlYlJUQ1NvY2tldEZhY3RvcnkuaCBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9MaWJXZWJSVENTb2NrZXRGYWN0b3J5
LmgKaW5kZXggYmQxOTljYTcxMWRiLi5kZjMyN2ZlZDJiNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9MaWJXZWJSVENTb2NrZXRGYWN0b3J5LmgK
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvd2VicnRjL0xpYldlYlJUQ1Nv
Y2tldEZhY3RvcnkuaApAQCAtNTQsNyArNTQsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBmb3JTb2Nr
ZXRJbkdyb3VwKGNvbnN0IHZvaWQqIHNvY2tldEdyb3VwLCBjb25zdCBGdW5jdGlvbjx2b2lkKExp
YldlYlJUQ1NvY2tldCYpPiYpOwogICAgIHJ0Yzo6QXN5bmNQYWNrZXRTb2NrZXQqIGNyZWF0ZVVk
cFNvY2tldChjb25zdCB2b2lkKiBzb2NrZXRHcm91cCwgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNz
JiwgdWludDE2X3QgbWluUG9ydCwgdWludDE2X3QgbWF4UG9ydCwgV2ViUGFnZVByb3h5SWRlbnRp
ZmllciwgYm9vbCBpc0ZpcnN0UGFydHksIGJvb2wgaXNSZWxheURpc2FibGVkLCBjb25zdCBXZWJD
b3JlOjpSZWdpc3RyYWJsZURvbWFpbiYpOwogICAgIHJ0Yzo6QXN5bmNQYWNrZXRTb2NrZXQqIGNy
ZWF0ZVNlcnZlclRjcFNvY2tldChjb25zdCB2b2lkKiBzb2NrZXRHcm91cCwgY29uc3QgcnRjOjpT
b2NrZXRBZGRyZXNzJiwgdWludDE2X3QgbWluUG9ydCwgdWludDE2X3QgbWF4UG9ydCwgaW50IG9w
dGlvbnMpOwotICAgIHJ0Yzo6QXN5bmNQYWNrZXRTb2NrZXQqIGNyZWF0ZUNsaWVudFRjcFNvY2tl
dChjb25zdCB2b2lkKiBzb2NrZXRHcm91cCwgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiBsb2Nh
bEFkZHJlc3MsIGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYgcmVtb3RlQWRkcmVzcywgU3RyaW5n
JiYgdXNlckFnZW50LCBjb25zdCBydGM6OlBhY2tldFNvY2tldFRjcE9wdGlvbnMmLCBXZWJQYWdl
UHJveHlJZGVudGlmaWVyLCBib29sIGlzUmVsYXlEaXNhYmxlZCk7CisgICAgcnRjOjpBc3luY1Bh
Y2tldFNvY2tldCogY3JlYXRlQ2xpZW50VGNwU29ja2V0KGNvbnN0IHZvaWQqIHNvY2tldEdyb3Vw
LCBjb25zdCBydGM6OlNvY2tldEFkZHJlc3MmIGxvY2FsQWRkcmVzcywgY29uc3QgcnRjOjpTb2Nr
ZXRBZGRyZXNzJiByZW1vdGVBZGRyZXNzLCBTdHJpbmcmJiB1c2VyQWdlbnQsIGNvbnN0IHJ0Yzo6
UGFja2V0U29ja2V0VGNwT3B0aW9ucyYsIFdlYlBhZ2VQcm94eUlkZW50aWZpZXIsIGJvb2wgaXNG
aXJzdFBhcnR5LCBib29sIGlzUmVsYXlEaXNhYmxlZCwgY29uc3QgV2ViQ29yZTo6UmVnaXN0cmFi
bGVEb21haW4mKTsKICAgICBydGM6OkFzeW5jUGFja2V0U29ja2V0KiBjcmVhdGVOZXdDb25uZWN0
aW9uU29ja2V0KExpYldlYlJUQ1NvY2tldCYsIFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tldElkZW50
aWZpZXIgbmV3Q29ubmVjdGlvblNvY2tldElkZW50aWZpZXIsIGNvbnN0IHJ0Yzo6U29ja2V0QWRk
cmVzcyYpOwogCiAgICAgTGliV2ViUlRDUmVzb2x2ZXIqIHJlc29sdmVyKExpYldlYlJUQ1Jlc29s
dmVySWRlbnRpZmllciBpZGVudGlmaWVyKSB7IHJldHVybiBtX3Jlc29sdmVycy5nZXQoaWRlbnRp
Zmllcik7IH0KLS0gCjIuMzAuMSAoQXBwbGUgR2l0LTEzMCkKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>437715</attachid>
            <date>2021-09-09 00:11:49 -0700</date>
            <delta_ts>2021-09-09 05:16:11 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-229801-20210909091147.patch</filename>
            <type>text/plain</type>
            <size>25729</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyMTkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDM1YjQzZWJjNmVjNmVlZWVi
MTEzMWUzN2FmMTg2MGNiMDM3NzE1NjguLjAzYzU0NThmNDMyMGUwOGJjMTc3ZTE2OWFlMzE5NzFi
NjU3MjdlNTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzYgQEAKKzIwMjEtMDktMDkgIFlvdWVubiBG
YWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIENhdGVnb3JpemUgV2ViUlRDIFRD
UCBudyBjb25uZWN0aW9ucyBsaWtlIGRvbmUgZm9yIFdlYlJUQyBVRFAgbncgY29ubmVjdGlvbnMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyOTgwMQor
CisgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgQ2FybHNvbi4KKworICAgICAgICBNb3ZlIE5ldHdv
cmtSVENVRFBTb2NrZXRDb2NvYSB0cmFja2VyIHJlbGF0ZWQgY29kZSB0byBpdHMgb3duIHJvdXRp
bmUgaW4gTmV0d29ya1JUQ1V0aWxpdGllc0NvY29hLgorICAgICAgICBNYWtlIHVzZSBvZiB0aGF0
IHJvdXRpbmUgaW4gTmV0d29ya1JUQ1RDUFNvY2tldENvY29hLgorICAgICAgICBUbyBkbyBzbywg
d2UgbmVlZCB0byBwYXNzIG1vcmUgaW5mb3JtYXRpb24gd2hlbiBjcmVhdGluZyBhIGNsaWVudCBU
Q1Agc29ja2V0IGZyb20gV2ViUHJvY2VzcyB0byBOZXR3b3JrUHJvY2Vzcy4KKyAgICAgICAgTWFu
dWFsbHkgdGVzdGVkLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtS
VENQcm92aWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtSVENQcm92aWRlcjo6Y3Jl
YXRlQ2xpZW50VENQU29ja2V0KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0
d29ya1JUQ1Byb3ZpZGVyLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdv
cmtSVENQcm92aWRlci5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy93ZWJy
dGMvTmV0d29ya1JUQ1RDUFNvY2tldENvY29hLmg6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mv
d2VicnRjL05ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6TmV0
d29ya1JUQ1RDUFNvY2tldENvY29hOjpjcmVhdGVDbGllbnRUQ1BTb2NrZXQpOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrUlRDVENQU29ja2V0Q29jb2E6Ok5ldHdvcmtSVENUQ1BTb2NrZXRDb2Nv
YSk6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENVRFBTb2NrZXRD
b2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1JUQ1VEUFNvY2tldENvY29hQ29ubmVj
dGlvbnM6OmNvbmZpZ3VyZVBhcmFtZXRlcnMpOgorICAgICAgICAoV2ViS2l0Ojppc0tub3duVHJh
Y2tlcik6IERlbGV0ZWQuCisgICAgICAgICogTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtS
VENVdGlsaXRpZXNDb2NvYS5oOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3
b3JrUlRDVXRpbGl0aWVzQ29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OnNldE5XUGFyYW1ldGVy
c1RyYWNrZXJPcHRpb25zKToKKyAgICAgICAgKFdlYktpdDo6aXNLbm93blRyYWNrZXIpOgorICAg
ICAgICAqIFdlYlByb2Nlc3MvTmV0d29yay93ZWJydGMvTGliV2ViUlRDUHJvdmlkZXIuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpSVENTb2NrZXRGYWN0b3J5OjpDcmVhdGVDbGllbnRUY3BTb2NrZXQp
OgorICAgICAgICAqIFdlYlByb2Nlc3MvTmV0d29yay93ZWJydGMvTGliV2ViUlRDU29ja2V0RmFj
dG9yeS5jcHA6CisgICAgICAgIChXZWJLaXQ6OkxpYldlYlJUQ1NvY2tldEZhY3Rvcnk6OmNyZWF0
ZUNsaWVudFRjcFNvY2tldCk6CisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9M
aWJXZWJSVENTb2NrZXRGYWN0b3J5Lmg6CisKIDIwMjEtMDktMDggIFJ5b3N1a2UgTml3YSAgPHJu
aXdhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgRGVwbG95IENoZWNrZWRSZWYgb24gRm9jdXNDb250
cm9sbGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9O
ZXR3b3JrUlRDUHJvdmlkZXIuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJy
dGMvTmV0d29ya1JUQ1Byb3ZpZGVyLmNwcAppbmRleCBiNDEyZmZmYzkzZmVmZGViYmVhYzA5YTVk
Zjc2OWMyNGJjMTFjYjU5Li4zNDE5NDdhM2I4ODU4YjY2ZjRmMzY0MzRkZTRiNzQ4NWVjZjBmMGEy
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3Jr
UlRDUHJvdmlkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRj
L05ldHdvcmtSVENQcm92aWRlci5jcHAKQEAgLTIwMiwxMyArMjAyLDEzIEBAIHJ0Yzo6UHJveHlJ
bmZvIE5ldHdvcmtSVENQcm92aWRlcjo6cHJveHlJbmZvRnJvbVNlc3Npb24oY29uc3QgUlRDTmV0
d29yazo6U29ja2V0CiB9CiAjZW5kaWYKIAotdm9pZCBOZXR3b3JrUlRDUHJvdmlkZXI6OmNyZWF0
ZUNsaWVudFRDUFNvY2tldChMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyIGlkZW50aWZpZXIsIGNv
bnN0IFJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MmIGxvY2FsQWRkcmVzcywgY29uc3QgUlRDTmV0
d29yazo6U29ja2V0QWRkcmVzcyYgcmVtb3RlQWRkcmVzcywgU3RyaW5nJiYgdXNlckFnZW50LCBp
bnQgb3B0aW9ucywgV2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSWRlbnRpZmllciwgYm9vbCBp
c1JlbGF5RGlzYWJsZWQpCit2b2lkIE5ldHdvcmtSVENQcm92aWRlcjo6Y3JlYXRlQ2xpZW50VENQ
U29ja2V0KExpYldlYlJUQ1NvY2tldElkZW50aWZpZXIgaWRlbnRpZmllciwgY29uc3QgUlRDTmV0
d29yazo6U29ja2V0QWRkcmVzcyYgbG9jYWxBZGRyZXNzLCBjb25zdCBSVENOZXR3b3JrOjpTb2Nr
ZXRBZGRyZXNzJiByZW1vdGVBZGRyZXNzLCBTdHJpbmcmJiB1c2VyQWdlbnQsIGludCBvcHRpb25z
LCBXZWJQYWdlUHJveHlJZGVudGlmaWVyIHBhZ2VJZGVudGlmaWVyLCBib29sIGlzRmlyc3RQYXJ0
eSwgYm9vbCBpc1JlbGF5RGlzYWJsZWQsIFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJiYgZG9t
YWluKQogewogICAgIEFTU0VSVChtX3J0Y05ldHdvcmtUaHJlYWQuSXNDdXJyZW50KCkpOwogCiAj
aWYgUExBVEZPUk0oQ09DT0EpCiAgICAgaWYgKG1fcGxhdGZvcm1UQ1BTb2NrZXRzRW5hYmxlZCkg
ewotICAgICAgICBpZiAoYXV0byBzb2NrZXQgPSBOZXR3b3JrUlRDVENQU29ja2V0Q29jb2E6OmNy
ZWF0ZUNsaWVudFRDUFNvY2tldChpZGVudGlmaWVyLCAqdGhpcywgcmVtb3RlQWRkcmVzcy52YWx1
ZSwgb3B0aW9ucywgYXR0cmlidXRlZEJ1bmRsZUlkZW50aWZpZXJGcm9tUGFnZUlkZW50aWZpZXIo
cGFnZUlkZW50aWZpZXIpLCBpc1JlbGF5RGlzYWJsZWQsIG1faXBjQ29ubmVjdGlvbi5jb3B5UmVm
KCkpKSB7CisgICAgICAgIGlmIChhdXRvIHNvY2tldCA9IE5ldHdvcmtSVENUQ1BTb2NrZXRDb2Nv
YTo6Y3JlYXRlQ2xpZW50VENQU29ja2V0KGlkZW50aWZpZXIsICp0aGlzLCByZW1vdGVBZGRyZXNz
LnZhbHVlLCBvcHRpb25zLCBhdHRyaWJ1dGVkQnVuZGxlSWRlbnRpZmllckZyb21QYWdlSWRlbnRp
ZmllcihwYWdlSWRlbnRpZmllciksIGlzRmlyc3RQYXJ0eSwgaXNSZWxheURpc2FibGVkLCBkb21h
aW4sIG1faXBjQ29ubmVjdGlvbi5jb3B5UmVmKCkpKSB7CiAgICAgICAgICAgICBhZGRTb2NrZXQo
aWRlbnRpZmllciwgV1RGTW92ZShzb2NrZXQpKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAg
ICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0
d29ya1JUQ1Byb3ZpZGVyLmggYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9O
ZXR3b3JrUlRDUHJvdmlkZXIuaAppbmRleCBlYjA3YmUxOTkzNjY3ZDU5NTYwMjY5YTVlNjE3ODEy
YmJhZGNmNDQ5Li4wOWEyMDU2OTdkNzNkYTg3NGM0YWM5MTEyNDYxZDJhZGYxNjRkYTI4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDUHJv
dmlkZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3Jr
UlRDUHJvdmlkZXIuaApAQCAtMTE2LDcgKzExNiw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBzdGFy
dExpc3RlbmluZ0ZvcklQQygpOwogCiAgICAgdm9pZCBjcmVhdGVVRFBTb2NrZXQoV2ViQ29yZTo6
TGliV2ViUlRDU29ja2V0SWRlbnRpZmllciwgY29uc3QgUlRDTmV0d29yazo6U29ja2V0QWRkcmVz
cyYsIHVpbnQxNl90LCB1aW50MTZfdCwgV2ViUGFnZVByb3h5SWRlbnRpZmllciwgYm9vbCBpc0Zp
cnN0UGFydHksIGJvb2wgaXNSZWxheURpc2FibGVkLCBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFp
biYmKTsKLSAgICB2b2lkIGNyZWF0ZUNsaWVudFRDUFNvY2tldChXZWJDb3JlOjpMaWJXZWJSVENT
b2NrZXRJZGVudGlmaWVyLCBjb25zdCBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzJiwgY29uc3Qg
UlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyYsIFN0cmluZyYmIHVzZXJBZ2VudCwgaW50LCBXZWJQ
YWdlUHJveHlJZGVudGlmaWVyLCBib29sIGlzUmVsYXlEaXNhYmxlZCk7CisgICAgdm9pZCBjcmVh
dGVDbGllbnRUQ1BTb2NrZXQoV2ViQ29yZTo6TGliV2ViUlRDU29ja2V0SWRlbnRpZmllciwgY29u
c3QgUlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyYsIGNvbnN0IFJUQ05ldHdvcms6OlNvY2tldEFk
ZHJlc3MmLCBTdHJpbmcmJiB1c2VyQWdlbnQsIGludCwgV2ViUGFnZVByb3h5SWRlbnRpZmllciwg
Ym9vbCBpc0ZpcnN0UGFydHksIGJvb2wgaXNSZWxheURpc2FibGVkLCBXZWJDb3JlOjpSZWdpc3Ry
YWJsZURvbWFpbiYmKTsKICAgICB2b2lkIGNyZWF0ZVNlcnZlclRDUFNvY2tldChXZWJDb3JlOjpM
aWJXZWJSVENTb2NrZXRJZGVudGlmaWVyLCBjb25zdCBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNz
JiwgdWludDE2X3QgbWluUG9ydCwgdWludDE2X3QgbWF4UG9ydCwgaW50KTsKICAgICB2b2lkIHdy
YXBOZXdUQ1BDb25uZWN0aW9uKFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tldElkZW50aWZpZXIgaWRl
bnRpZmllciwgV2ViQ29yZTo6TGliV2ViUlRDU29ja2V0SWRlbnRpZmllciBuZXdDb25uZWN0aW9u
U29ja2V0SWRlbnRpZmllcik7CiAgICAgdm9pZCBzZW5kVG9Tb2NrZXQoV2ViQ29yZTo6TGliV2Vi
UlRDU29ja2V0SWRlbnRpZmllciwgY29uc3QgSVBDOjpEYXRhUmVmZXJlbmNlJiwgUlRDTmV0d29y
azo6U29ja2V0QWRkcmVzcyYmLCBSVENQYWNrZXRPcHRpb25zJiYpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1Byb3ZpZGVyLm1lc3Nh
Z2VzLmluIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1By
b3ZpZGVyLm1lc3NhZ2VzLmluCmluZGV4IGMyZDhiMjliZGZhN2JmMTMxYjkyYmNhOGZmYTgyNmI0
ZWQ0OWYzM2UuLjY4MjBlZjM4NDQ1NzYyZDEzYTllMDZhZTk0ZDcwNzJlODE5NmQzZDYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENQcm92
aWRlci5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0
Yy9OZXR3b3JrUlRDUHJvdmlkZXIubWVzc2FnZXMuaW4KQEAgLTI1LDcgKzI1LDcgQEAKIG1lc3Nh
Z2VzIC0+IE5ldHdvcmtSVENQcm92aWRlciB7CiAgICAgQ3JlYXRlVURQU29ja2V0KFdlYkNvcmU6
OkxpYldlYlJUQ1NvY2tldElkZW50aWZpZXIgaWRlbnRpZmllciwgV2ViS2l0OjpSVENOZXR3b3Jr
OjpTb2NrZXRBZGRyZXNzIGxvY2FsQWRkcmVzcywgdWludDE2X3QgbWluUG9ydCwgdWludDE2X3Qg
bWF4UG9ydCwgV2ViS2l0OjpXZWJQYWdlUHJveHlJZGVudGlmaWVyIHBhZ2VJZGVudGlmaWVyLCBi
b29sIGlzRmlyc3RQYXJ0eSwgYm9vbCBpc1JlbGF5RGlzYWJsZWQsIFdlYkNvcmU6OlJlZ2lzdHJh
YmxlRG9tYWluIGRvbWFpbikKICAgICBDcmVhdGVTZXJ2ZXJUQ1BTb2NrZXQoV2ViQ29yZTo6TGli
V2ViUlRDU29ja2V0SWRlbnRpZmllciBpZGVudGlmaWVyLCBXZWJLaXQ6OlJUQ05ldHdvcms6OlNv
Y2tldEFkZHJlc3MgbG9jYWxBZGRyZXNzLCB1aW50MTZfdCBtaW5Qb3J0LCB1aW50MTZfdCBtYXhQ
b3J0LCBpbnQgb3B0aW9ucykKLSAgICBDcmVhdGVDbGllbnRUQ1BTb2NrZXQoV2ViQ29yZTo6TGli
V2ViUlRDU29ja2V0SWRlbnRpZmllciBpZGVudGlmaWVyLCBXZWJLaXQ6OlJUQ05ldHdvcms6OlNv
Y2tldEFkZHJlc3MgbG9jYWxBZGRyZXNzLCBXZWJLaXQ6OlJUQ05ldHdvcms6OlNvY2tldEFkZHJl
c3MgcmVtb3RlQWRkcmVzcywgU3RyaW5nIHVzZXJBZ2VudCwgaW50IG9wdGlvbnMsIFdlYktpdDo6
V2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSWRlbnRpZmllciwgYm9vbCBpc1JlbGF5RGlzYWJs
ZWQpCisgICAgQ3JlYXRlQ2xpZW50VENQU29ja2V0KFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tldElk
ZW50aWZpZXIgaWRlbnRpZmllciwgV2ViS2l0OjpSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzIGxv
Y2FsQWRkcmVzcywgV2ViS2l0OjpSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzIHJlbW90ZUFkZHJl
c3MsIFN0cmluZyB1c2VyQWdlbnQsIGludCBvcHRpb25zLCBXZWJLaXQ6OldlYlBhZ2VQcm94eUlk
ZW50aWZpZXIgcGFnZUlkZW50aWZpZXIsIGJvb2wgaXNGaXJzdFBhcnR5LCBib29sIGlzUmVsYXlE
aXNhYmxlZCwgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4gZG9tYWluKQogICAgIFdyYXBOZXdU
Q1BDb25uZWN0aW9uKFdlYkNvcmU6OkxpYldlYlJUQ1NvY2tldElkZW50aWZpZXIgaWRlbnRpZmll
ciwgV2ViQ29yZTo6TGliV2ViUlRDU29ja2V0SWRlbnRpZmllciBuZXdDb25uZWN0aW9uU29ja2V0
SWRlbnRpZmllcikKIAogICAgIHZvaWQgU2V0UGxhdGZvcm1UQ1BTb2NrZXRzRW5hYmxlZChib29s
IGVuYWJsZWQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0
Yy9OZXR3b3JrUlRDVENQU29ja2V0Q29jb2EuaCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nl
c3Mvd2VicnRjL05ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYS5oCmluZGV4IDJlMjkxZTEwNWIxOWRi
MzVjY2ZiMDBmMzdjZWRmOTVjZDJkOTk4ODYuLjNkY2ZhZTQzZDlmNzRkNTBjNjc2ODBkNTJiMGRk
YThkZTI2MmQzZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2Vi
cnRjL05ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29y
a1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYS5oCkBAIC0zOSw5ICszOSw5
IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogY2xhc3MgTmV0d29ya1JUQ1RDUFNvY2tldENvY29hIGZp
bmFsIDogcHVibGljIE5ldHdvcmtSVENQcm92aWRlcjo6U29ja2V0IHsKICAgICBXVEZfTUFLRV9G
QVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKLSAgICBzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPE5ldHdv
cmtSVENQcm92aWRlcjo6U29ja2V0PiBjcmVhdGVDbGllbnRUQ1BTb2NrZXQoV2ViQ29yZTo6TGli
V2ViUlRDU29ja2V0SWRlbnRpZmllciwgTmV0d29ya1JUQ1Byb3ZpZGVyJiwgY29uc3QgcnRjOjpT
b2NrZXRBZGRyZXNzJiwgaW50IG9wdGlvbnMsIGNvbnN0IFN0cmluZyYgYXR0cmlidXRlZEJ1bmRs
ZUlkZW50aWZpZXIsIGJvb2wgaXNSZWxheURpc2FibGVkLCBSZWY8SVBDOjpDb25uZWN0aW9uPiYm
KTsKKyAgICBzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPE5ldHdvcmtSVENQcm92aWRlcjo6U29ja2V0
PiBjcmVhdGVDbGllbnRUQ1BTb2NrZXQoV2ViQ29yZTo6TGliV2ViUlRDU29ja2V0SWRlbnRpZmll
ciwgTmV0d29ya1JUQ1Byb3ZpZGVyJiwgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiwgaW50IG9w
dGlvbnMsIGNvbnN0IFN0cmluZyYgYXR0cmlidXRlZEJ1bmRsZUlkZW50aWZpZXIsIGJvb2wgaXNG
aXJzdFBhcnR5LCBib29sIGlzUmVsYXlEaXNhYmxlZCwgY29uc3QgV2ViQ29yZTo6UmVnaXN0cmFi
bGVEb21haW4mLCBSZWY8SVBDOjpDb25uZWN0aW9uPiYmKTsKIAotICAgIE5ldHdvcmtSVENUQ1BT
b2NrZXRDb2NvYShXZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyLCBOZXR3b3JrUlRD
UHJvdmlkZXImLCBjb25zdCBydGM6OlNvY2tldEFkZHJlc3MmLCBpbnQgb3B0aW9ucywgY29uc3Qg
U3RyaW5nJiBhdHRyaWJ1dGVkQnVuZGxlSWRlbnRpZmllciwgYm9vbCBpc1JlbGF5RGlzYWJsZWQs
IFJlZjxJUEM6OkNvbm5lY3Rpb24+JiYpOworICAgIE5ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYShX
ZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyLCBOZXR3b3JrUlRDUHJvdmlkZXImLCBj
b25zdCBydGM6OlNvY2tldEFkZHJlc3MmLCBpbnQgb3B0aW9ucywgY29uc3QgU3RyaW5nJiBhdHRy
aWJ1dGVkQnVuZGxlSWRlbnRpZmllciwgYm9vbCBpc0ZpcnN0UGFydHksIGJvb2wgaXNSZWxheURp
c2FibGVkLCBjb25zdCBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiYsIFJlZjxJUEM6OkNvbm5l
Y3Rpb24+JiYpOwogCiBwcml2YXRlOgogICAgIC8vIE5ldHdvcmtSVENQcm92aWRlcjo6U29ja2V0
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29y
a1JUQ1RDUFNvY2tldENvY29hLm1tIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJy
dGMvTmV0d29ya1JUQ1RDUFNvY2tldENvY29hLm1tCmluZGV4IDU3NjQ4NjA4YzlmMmE5NzQ2NDcx
NzczNWNiNTA5MGRhOTdjNTI5YmMuLjk5NGQ5ZmE0MzVmNGI1ZmNjNDI2Yjc2MGU3OWYzMzY5ODlh
NWE3NWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05l
dHdvcmtSVENUQ1BTb2NrZXRDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVENQU29ja2V0Q29jb2EubW0KQEAgLTUxLDEyICs1MSwxMiBA
QCBzdGF0aWMgZGlzcGF0Y2hfcXVldWVfdCB0Y3BTb2NrZXRRdWV1ZSgpCiAgICAgcmV0dXJuIHF1
ZXVlOwogfQogCi1zdGQ6OnVuaXF1ZV9wdHI8TmV0d29ya1JUQ1Byb3ZpZGVyOjpTb2NrZXQ+IE5l
dHdvcmtSVENUQ1BTb2NrZXRDb2NvYTo6Y3JlYXRlQ2xpZW50VENQU29ja2V0KExpYldlYlJUQ1Nv
Y2tldElkZW50aWZpZXIgaWRlbnRpZmllciwgTmV0d29ya1JUQ1Byb3ZpZGVyJiBydGNQcm92aWRl
ciwgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiByZW1vdGVBZGRyZXNzLCBpbnQgdGNwT3B0aW9u
cywgY29uc3QgU3RyaW5nJiBhdHRyaWJ1dGVkQnVuZGxlSWRlbnRpZmllciwgYm9vbCBpc1JlbGF5
RGlzYWJsZWQsIFJlZjxJUEM6OkNvbm5lY3Rpb24+JiYgY29ubmVjdGlvbikKK3N0ZDo6dW5pcXVl
X3B0cjxOZXR3b3JrUlRDUHJvdmlkZXI6OlNvY2tldD4gTmV0d29ya1JUQ1RDUFNvY2tldENvY29h
OjpjcmVhdGVDbGllbnRUQ1BTb2NrZXQoTGliV2ViUlRDU29ja2V0SWRlbnRpZmllciBpZGVudGlm
aWVyLCBOZXR3b3JrUlRDUHJvdmlkZXImIHJ0Y1Byb3ZpZGVyLCBjb25zdCBydGM6OlNvY2tldEFk
ZHJlc3MmIHJlbW90ZUFkZHJlc3MsIGludCB0Y3BPcHRpb25zLCBjb25zdCBTdHJpbmcmIGF0dHJp
YnV0ZWRCdW5kbGVJZGVudGlmaWVyLCBib29sIGlzRmlyc3RQYXJ0eSwgYm9vbCBpc1JlbGF5RGlz
YWJsZWQsIGNvbnN0IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJiBkb21haW4sIFJlZjxJUEM6
OkNvbm5lY3Rpb24+JiYgY29ubmVjdGlvbikKIHsKICAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIG1p
Z3JhdGUgc3NsdGNwIGNhbmRpZGF0ZXMsIG1heWJlIHN1cHBvcnQgT1BUX1RMU19JTlNFQ1VSRSBh
cyB3ZWxsLgogICAgIGlmICgodGNwT3B0aW9ucyAmIHJ0Yzo6UGFja2V0U29ja2V0RmFjdG9yeTo6
T1BUX1RMU19GQUtFKSB8fCAodGNwT3B0aW9ucyAmIHJ0Yzo6UGFja2V0U29ja2V0RmFjdG9yeTo6
T1BUX1RMU19JTlNFQ1VSRSkpCiAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgIHJldHVybiBt
YWtlVW5pcXVlPE5ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYT4oaWRlbnRpZmllciwgcnRjUHJvdmlk
ZXIsIHJlbW90ZUFkZHJlc3MsIHRjcE9wdGlvbnMsIGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVy
LCBpc1JlbGF5RGlzYWJsZWQsIFdURk1vdmUoY29ubmVjdGlvbikpOworICAgIHJldHVybiBtYWtl
VW5pcXVlPE5ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYT4oaWRlbnRpZmllciwgcnRjUHJvdmlkZXIs
IHJlbW90ZUFkZHJlc3MsIHRjcE9wdGlvbnMsIGF0dHJpYnV0ZWRCdW5kbGVJZGVudGlmaWVyLCBp
c0ZpcnN0UGFydHksIGlzUmVsYXlEaXNhYmxlZCwgZG9tYWluLCBXVEZNb3ZlKGNvbm5lY3Rpb24p
KTsKIH0KIAogc3RhdGljIGlubGluZSB2b2lkIHByb2Nlc3NJbmNvbWluZ0RhdGEoUmV0YWluUHRy
PG53X2Nvbm5lY3Rpb25fdD4mJiBud0Nvbm5lY3Rpb24sIEZ1bmN0aW9uPFZlY3Rvcjx1aW50OF90
PihWZWN0b3I8dWludDhfdD4mJik+JiYgcHJvY2Vzc0RhdGEsIFZlY3Rvcjx1aW50OF90PiYmIGJ1
ZmZlciA9IHsgfSkKQEAgLTgxLDcgKzgxLDcgQEAgc3RhdGljIGlubGluZSB2b2lkIHByb2Nlc3NJ
bmNvbWluZ0RhdGEoUmV0YWluUHRyPG53X2Nvbm5lY3Rpb25fdD4mJiBud0Nvbm5lY3Rpb24KICAg
ICB9KS5nZXQoKSk7CiB9CiAKLU5ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYTo6TmV0d29ya1JUQ1RD
UFNvY2tldENvY29hKExpYldlYlJUQ1NvY2tldElkZW50aWZpZXIgaWRlbnRpZmllciwgTmV0d29y
a1JUQ1Byb3ZpZGVyJiBydGNQcm92aWRlciwgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiByZW1v
dGVBZGRyZXNzLCBpbnQgb3B0aW9ucywgY29uc3QgU3RyaW5nJiBhdHRyaWJ1dGVkQnVuZGxlSWRl
bnRpZmllciwgYm9vbCBpc1JlbGF5RGlzYWJsZWQsIFJlZjxJUEM6OkNvbm5lY3Rpb24+JiYgY29u
bmVjdGlvbikKK05ldHdvcmtSVENUQ1BTb2NrZXRDb2NvYTo6TmV0d29ya1JUQ1RDUFNvY2tldENv
Y29hKExpYldlYlJUQ1NvY2tldElkZW50aWZpZXIgaWRlbnRpZmllciwgTmV0d29ya1JUQ1Byb3Zp
ZGVyJiBydGNQcm92aWRlciwgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiByZW1vdGVBZGRyZXNz
LCBpbnQgb3B0aW9ucywgY29uc3QgU3RyaW5nJiBhdHRyaWJ1dGVkQnVuZGxlSWRlbnRpZmllciwg
Ym9vbCBpc0ZpcnN0UGFydHksIGJvb2wgaXNSZWxheURpc2FibGVkLCBjb25zdCBXZWJDb3JlOjpS
ZWdpc3RyYWJsZURvbWFpbiYgZG9tYWluLCBSZWY8SVBDOjpDb25uZWN0aW9uPiYmIGNvbm5lY3Rp
b24pCiAgICAgOiBtX2lkZW50aWZpZXIoaWRlbnRpZmllcikKICAgICAsIG1fcnRjUHJvdmlkZXIo
cnRjUHJvdmlkZXIpCiAgICAgLCBtX2Nvbm5lY3Rpb24oV1RGTW92ZShjb25uZWN0aW9uKSkKQEAg
LTk4LDkgKzk4LDcgQEAgTmV0d29ya1JUQ1RDUFNvY2tldENvY29hOjpOZXR3b3JrUlRDVENQU29j
a2V0Q29jb2EoTGliV2ViUlRDU29ja2V0SWRlbnRpZmllciBpZGUKICAgICB9KSk7CiAKICAgICBz
ZXROV1BhcmFtZXRlcnNBcHBsaWNhdGlvbklkZW50aWZpZXJzKHRjcFRMUy5nZXQoKSwgcnRjUHJv
dmlkZXIuYXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCksIHJ0Y1Byb3ZpZGVyLnNvdXJjZUFw
cGxpY2F0aW9uQXVkaXRUb2tlbigpLCBhdHRyaWJ1dGVkQnVuZGxlSWRlbnRpZmllcik7Ci0KLSAg
ICBpZiAoaXNSZWxheURpc2FibGVkKQotICAgICAgICBud19wYXJhbWV0ZXJzX3NldF9hY2NvdW50
X2lkKHRjcFRMUy5nZXQoKSwgImNvbS5hcHBsZS5zYWZhcmkucGVlcnRvcGVlciIpOworICAgIHNl
dE5XUGFyYW1ldGVyc1RyYWNrZXJPcHRpb25zKHRjcFRMUy5nZXQoKSwgaXNSZWxheURpc2FibGVk
LCBpc0ZpcnN0UGFydHksIGlzS25vd25UcmFja2VyKGRvbWFpbikpOwogCiAgICAgbV9ud0Nvbm5l
Y3Rpb24gPSBhZG9wdE5TKG53X2Nvbm5lY3Rpb25fY3JlYXRlKGhvc3QuZ2V0KCksIHRjcFRMUy5n
ZXQoKSkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL3dlYnJ0
Yy9OZXR3b3JrUlRDVURQU29ja2V0Q29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9j
ZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVURQU29ja2V0Q29jb2EubW0KaW5kZXggYmNkMDk1M2Y1ZWNj
YTY3YTAzYzExNTQ2ODYyNDUxZGNlMDViNWU1NS4uZDIwOTI0YTZjMjMyMzA4ODc0YWMwNGZhMjlj
YjIzZjNiYzU1NjFmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93
ZWJydGMvTmV0d29ya1JUQ1VEUFNvY2tldENvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENVRFBTb2NrZXRDb2NvYS5tbQpAQCAtMzIsNyAr
MzIsNiBAQAogI2luY2x1ZGUgIkxpYldlYlJUQ05ldHdvcmtNZXNzYWdlcy5oIgogI2luY2x1ZGUg
IkxvZ2dpbmcuaCIKICNpbmNsdWRlICJOV1BhcmFtZXRlcnNTUEkuaCIKLSNpbmNsdWRlIDxXZWJD
b3JlL1JlZ2lzdHJhYmxlRG9tYWluLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TVFVOTWVzc2FnZVBh
cnNpbmcuaD4KICNpbmNsdWRlIDxkaXNwYXRjaC9kaXNwYXRjaC5oPgogI2luY2x1ZGUgPHd0Zi9C
bG9ja1B0ci5oPgpAQCAtNDAsMTIgKzM5LDYgQEAKICNpbmNsdWRlIDx3dGYvVGhyZWFkU2FmZVJl
ZkNvdW50ZWQuaD4KIAogI2lmIEhBVkUoTldQQVJBTUVURVJTX1RSQUNLRVJfQVBJKQotU09GVF9M
SU5LX0xJQlJBUlkobGlibmV0d29ya2V4dGVuc2lvbikKLVNPRlRfTElOS19DTEFTUyhsaWJuZXR3
b3JrZXh0ZW5zaW9uLCBORUhlbHBlclRyYWNrZXJEaXNwb3NpdGlvbl90KQotU09GVF9MSU5LX0NM
QVNTKGxpYm5ldHdvcmtleHRlbnNpb24sIE5FSGVscGVyVHJhY2tlckFwcEluZm9SZWYpCi1TT0ZU
X0xJTktfQ0xBU1MobGlibmV0d29ya2V4dGVuc2lvbiwgTkVIZWxwZXJUcmFja2VyRG9tYWluQ29u
dGV4dFJlZikKLVNPRlRfTElOSyhsaWJuZXR3b3JrZXh0ZW5zaW9uLCBORUhlbHBlclRyYWNrZXJH
ZXREaXNwb3NpdGlvbiwgTkVIZWxwZXJUcmFja2VyRGlzcG9zaXRpb25fdCosIChORUhlbHBlclRy
YWNrZXJBcHBJbmZvUmVmICphcHBfaW5mb19yZWYsIENGQXJyYXlSZWYgZG9tYWlucywgTkVIZWxw
ZXJUcmFja2VyRG9tYWluQ29udGV4dFJlZiAqdHJhY2tlckRvbWFpbkNvbnRleHRSZWYsIENGSW5k
ZXggKnRyYWNrZXJEb21haW5JbmRleCksIChhcHBfaW5mb19yZWYsIGRvbWFpbnMsIHRyYWNrZXJE
b21haW5Db250ZXh0UmVmLCB0cmFja2VyRG9tYWluSW5kZXgpKQotCiBTT0ZUX0xJTktfTElCUkFS
WV9PUFRJT05BTChsaWJuZXR3b3JrKQogU09GVF9MSU5LX09QVElPTkFMKGxpYm5ldHdvcmssIG53
X3BhcmFtZXRlcnNfYWxsb3dfc2hhcmluZ19wb3J0X3dpdGhfbGlzdGVuZXIsIHZvaWQsIF9fY2Rl
Y2wsIChud19wYXJhbWV0ZXJzX3QsIG53X2xpc3RlbmVyX3QpKQogI2VuZGlmCkBAIC03MiwxMCAr
NjUsOCBAQCBwcml2YXRlOgogCiAgICAgV2ViQ29yZTo6TGliV2ViUlRDU29ja2V0SWRlbnRpZmll
ciBtX2lkZW50aWZpZXI7CiAgICAgUmVmPElQQzo6Q29ubmVjdGlvbj4gbV9jb25uZWN0aW9uOwot
I2lmIEhBVkUoTldQQVJBTUVURVJTX1RSQUNLRVJfQVBJKQogICAgIGJvb2wgbV9pc0ZpcnN0UGFy
dHkgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9pc0tub3duVHJhY2tlciB7IGZhbHNlIH07Ci0jZW5k
aWYKICAgICBib29sIG1fc2hvdWxkQnlwYXNzUmVsYXkgeyBmYWxzZSB9OwogCiAgICAgQ1N0cmlu
ZyBtX3NvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcjsKQEAgLTE0OSwyMyArMTQwLDEx
IEBAIHN0YXRpYyBydGM6OlNvY2tldEFkZHJlc3Mgc29ja2V0QWRkcmVzc0Zyb21JbmNvbWluZ0Nv
bm5lY3Rpb24obndfY29ubmVjdGlvbl90IGNvCiAgICAgcmV0dXJuIHJ0Yzo6U29ja2V0QWRkcmVz
cyB7IG53X2VuZHBvaW50X2dldF9ob3N0bmFtZShlbmRwb2ludC5nZXQoKSksIG53X2VuZHBvaW50
X2dldF9wb3J0KGVuZHBvaW50LmdldCgpKSB9OwogfQogCi0jaWYgSEFWRShOV1BBUkFNRVRFUlNf
VFJBQ0tFUl9BUEkpCi1zdGF0aWMgYm9vbCBpc0tub3duVHJhY2tlcihjb25zdCBXZWJDb3JlOjpS
ZWdpc3RyYWJsZURvbWFpbiYgZG9tYWluKQotewotICAgIE5TQXJyYXk8TlNTdHJpbmcgKj4gKmRv
bWFpbnMgPSBAW2RvbWFpbi5zdHJpbmcoKV07Ci0gICAgTkVIZWxwZXJUcmFja2VyRG9tYWluQ29u
dGV4dFJlZiAqY29udGV4dCA9IG5pbDsKLSAgICBDRkluZGV4IGluZGV4ID0gMDsKLSAgICByZXR1
cm4gISFORUhlbHBlclRyYWNrZXJHZXREaXNwb3NpdGlvbihudWxscHRyLCAoQ0ZBcnJheVJlZilk
b21haW5zLCBjb250ZXh0LCAmaW5kZXgpOwotfQotI2VuZGlmCi0KIE5ldHdvcmtSVENVRFBTb2Nr
ZXRDb2NvYUNvbm5lY3Rpb25zOjpOZXR3b3JrUlRDVURQU29ja2V0Q29jb2FDb25uZWN0aW9ucyhX
ZWJDb3JlOjpMaWJXZWJSVENTb2NrZXRJZGVudGlmaWVyIGlkZW50aWZpZXIsIE5ldHdvcmtSVENQ
cm92aWRlciYgcnRjUHJvdmlkZXIsIGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYgYWRkcmVzcywg
UmVmPElQQzo6Q29ubmVjdGlvbj4mJiBjb25uZWN0aW9uLCBTdHJpbmcmJiBhdHRyaWJ1dGVkQnVu
ZGxlSWRlbnRpZmllciwgYm9vbCBpc0ZpcnN0UGFydHksIGJvb2wgaXNSZWxheURpc2FibGVkLCBj
b25zdCBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFpbiYgZG9tYWluKQogICAgIDogbV9pZGVudGlm
aWVyKGlkZW50aWZpZXIpCiAgICAgLCBtX2Nvbm5lY3Rpb24oV1RGTW92ZShjb25uZWN0aW9uKSkK
LSNpZiBIQVZFKE5XUEFSQU1FVEVSU19UUkFDS0VSX0FQSSkKICAgICAsIG1faXNGaXJzdFBhcnR5
KGlzRmlyc3RQYXJ0eSkKICAgICAsIG1faXNLbm93blRyYWNrZXIoaXNLbm93blRyYWNrZXIoZG9t
YWluKSkKLSNlbmRpZgogICAgICwgbV9zaG91bGRCeXBhc3NSZWxheShpc1JlbGF5RGlzYWJsZWQp
CiAgICAgLCBtX3NvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcihydGNQcm92aWRlci5h
cHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKSkKICAgICAsIG1fc291cmNlQXBwbGljYXRpb25B
dWRpdFRva2VuKHJ0Y1Byb3ZpZGVyLnNvdXJjZUFwcGxpY2F0aW9uQXVkaXRUb2tlbigpKQpAQCAt
MjM3LDE0ICsyMTYsOCBAQCB2b2lkIE5ldHdvcmtSVENVRFBTb2NrZXRDb2NvYUNvbm5lY3Rpb25z
Ojpjb25maWd1cmVQYXJhbWV0ZXJzKG53X3BhcmFtZXRlcnNfdCBwYQogICAgIGF1dG8gb3B0aW9u
cyA9IGFkb3B0TlMobndfcHJvdG9jb2xfc3RhY2tfY29weV9pbnRlcm5ldF9wcm90b2NvbChwcm90
b2NvbFN0YWNrLmdldCgpKSk7CiAgICAgbndfaXBfb3B0aW9uc19zZXRfdmVyc2lvbihvcHRpb25z
LmdldCgpLCB2ZXJzaW9uKTsKIAotICAgIGlmIChtX3Nob3VsZEJ5cGFzc1JlbGF5KQotICAgICAg
ICBud19wYXJhbWV0ZXJzX3NldF9hY2NvdW50X2lkKHBhcmFtZXRlcnMsICJjb20uYXBwbGUuc2Fm
YXJpLnBlZXJ0b3BlZXIiKTsKLSNpZiBIQVZFKE5XUEFSQU1FVEVSU19UUkFDS0VSX0FQSSkKLSAg
ICBud19wYXJhbWV0ZXJzX3NldF9pc190aGlyZF9wYXJ0eV93ZWJfY29udGVudChwYXJhbWV0ZXJz
LCAhbV9pc0ZpcnN0UGFydHkpOwotICAgIG53X3BhcmFtZXRlcnNfc2V0X2lzX2tub3duX3RyYWNr
ZXIocGFyYW1ldGVycywgbV9pc0tub3duVHJhY2tlcik7Ci0jZW5kaWYKLQogICAgIHNldE5XUGFy
YW1ldGVyc0FwcGxpY2F0aW9uSWRlbnRpZmllcnMocGFyYW1ldGVycywgbV9zb3VyY2VBcHBsaWNh
dGlvbkJ1bmRsZUlkZW50aWZpZXIuZGF0YSgpLCBtX3NvdXJjZUFwcGxpY2F0aW9uQXVkaXRUb2tl
biwgbV9hdHRyaWJ1dGVkQnVuZGxlSWRlbnRpZmllcik7CisgICAgc2V0TldQYXJhbWV0ZXJzVHJh
Y2tlck9wdGlvbnMocGFyYW1ldGVycywgbV9zaG91bGRCeXBhc3NSZWxheSwgbV9pc0ZpcnN0UGFy
dHksIG1faXNLbm93blRyYWNrZXIpOwogCiAgICAgbndfcGFyYW1ldGVyc19zZXRfcmV1c2VfbG9j
YWxfYWRkcmVzcyhwYXJhbWV0ZXJzLCB0cnVlKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvTmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENVdGlsaXRpZXNDb2NvYS5oIGIvU291
cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1V0aWxpdGllc0NvY29h
LmgKaW5kZXggNmMyNTMxMDhkZDM3MWY0YTI0M2NhMjI2YTdhODhlOTNhYWJhODUyZC4uZjc0ZjFj
Zjg0NTJkZWZjYWI4NmFiOGJlMTQ5MjA0YmE3NmI5ZGViNSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1V0aWxpdGllc0NvY29hLmgKKysr
IGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1V0aWxpdGll
c0NvY29hLmgKQEAgLTMxLDkgKzMxLDE1IEBACiAjaW5jbHVkZSA8b3B0aW9uYWw+CiAjaW5jbHVk
ZSA8d3RmL0ZvcndhcmQuaD4KIAorbmFtZXNwYWNlIFdlYkNvcmUgeworY2xhc3MgUmVnaXN0cmFi
bGVEb21haW47Cit9CisKIG5hbWVzcGFjZSBXZWJLaXQgewogCiB2b2lkIHNldE5XUGFyYW1ldGVy
c0FwcGxpY2F0aW9uSWRlbnRpZmllcnMobndfcGFyYW1ldGVyc190LCBjb25zdCBjaGFyKiBzb3Vy
Y2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIsIHN0ZDo6b3B0aW9uYWw8YXVkaXRfdG9rZW5f
dD4sIGNvbnN0IFN0cmluZyYgYXR0cmlidXRlZEJ1bmRsZUlkZW50aWZpZXIpOwordm9pZCBzZXRO
V1BhcmFtZXRlcnNUcmFja2VyT3B0aW9ucyhud19wYXJhbWV0ZXJzX3QsIGJvb2wgc2hvdWxkQnlw
YXNzUmVsYXksIGJvb2wgaXNGaXJzdFBhcnR5LCBib29sIGlzS25vd25UcmFja2VyKTsKK2Jvb2wg
aXNLbm93blRyYWNrZXIoY29uc3QgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4mKTsKIAogfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3Mvd2VicnRjL05ldHdvcmtSVENVdGlsaXRpZXNDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3Mvd2VicnRjL05ldHdvcmtSVENVdGlsaXRpZXNDb2NvYS5tbQppbmRleCA1
MjE2MDAxN2I4NzA2ZDFmODhlZDQ4MTEyZjRlZmY5YTdlOTU5YzU3Li4zMTQxNzFkYzVmZmY0ODQ0
NGQ3NTAzMDliNDBhNWYxZWFjNTEwMjkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL3dlYnJ0Yy9OZXR3b3JrUlRDVXRpbGl0aWVzQ29jb2EubW0KKysrIGIvU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy93ZWJydGMvTmV0d29ya1JUQ1V0aWxpdGllc0NvY29hLm1t
CkBAIC0yOCwxMCArMjgsMTcgQEAKIAogI2lmIFVTRShMSUJXRUJSVEMpCiAKKyNpbXBvcnQgPFdl
YkNvcmUvUmVnaXN0cmFibGVEb21haW4uaD4KICNpbXBvcnQgPHd0Zi9Tb2Z0TGlua2luZy5oPgog
I2ltcG9ydCA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKICNpZiBIQVZFKE5XUEFSQU1FVEVSU19U
UkFDS0VSX0FQSSkKK1NPRlRfTElOS19MSUJSQVJZKGxpYm5ldHdvcmtleHRlbnNpb24pCitTT0ZU
X0xJTktfQ0xBU1MobGlibmV0d29ya2V4dGVuc2lvbiwgTkVIZWxwZXJUcmFja2VyRGlzcG9zaXRp
b25fdCkKK1NPRlRfTElOS19DTEFTUyhsaWJuZXR3b3JrZXh0ZW5zaW9uLCBORUhlbHBlclRyYWNr
ZXJBcHBJbmZvUmVmKQorU09GVF9MSU5LX0NMQVNTKGxpYm5ldHdvcmtleHRlbnNpb24sIE5FSGVs
cGVyVHJhY2tlckRvbWFpbkNvbnRleHRSZWYpCitTT0ZUX0xJTksobGlibmV0d29ya2V4dGVuc2lv
biwgTkVIZWxwZXJUcmFja2VyR2V0RGlzcG9zaXRpb24sIE5FSGVscGVyVHJhY2tlckRpc3Bvc2l0
aW9uX3QqLCAoTkVIZWxwZXJUcmFja2VyQXBwSW5mb1JlZiAqYXBwX2luZm9fcmVmLCBDRkFycmF5
UmVmIGRvbWFpbnMsIE5FSGVscGVyVHJhY2tlckRvbWFpbkNvbnRleHRSZWYgKnRyYWNrZXJEb21h
aW5Db250ZXh0UmVmLCBDRkluZGV4ICp0cmFja2VyRG9tYWluSW5kZXgpLCAoYXBwX2luZm9fcmVm
LCBkb21haW5zLCB0cmFja2VyRG9tYWluQ29udGV4dFJlZiwgdHJhY2tlckRvbWFpbkluZGV4KSkK
KwogU09GVF9MSU5LX0xJQlJBUllfT1BUSU9OQUwobGlibmV0d29yaykKIFNPRlRfTElOS19PUFRJ
T05BTChsaWJuZXR3b3JrLCBud19wYXJhbWV0ZXJzX3NldF9hdHRyaWJ1dGVkX2J1bmRsZV9pZGVu
dGlmaWVyLCB2b2lkLCBfX2NkZWNsLCAobndfcGFyYW1ldGVyc190LCBjb25zdCBjaGFyKikpCiAj
ZW5kaWYKQEAgLTUxLDYgKzU4LDI4IEBAIHZvaWQgc2V0TldQYXJhbWV0ZXJzQXBwbGljYXRpb25J
ZGVudGlmaWVycyhud19wYXJhbWV0ZXJzX3QgcGFyYW1ldGVycywgY29uc3QgY2hhCiAjZW5kaWYK
IH0KIAordm9pZCBzZXROV1BhcmFtZXRlcnNUcmFja2VyT3B0aW9ucyhud19wYXJhbWV0ZXJzX3Qg
cGFyYW1ldGVycywgYm9vbCBzaG91bGRCeXBhc3NSZWxheSwgYm9vbCBpc0ZpcnN0UGFydHksIGJv
b2wgaXNLbm93blRyYWNrZXIpCit7CisgICAgaWYgKHNob3VsZEJ5cGFzc1JlbGF5KQorICAgICAg
ICBud19wYXJhbWV0ZXJzX3NldF9hY2NvdW50X2lkKHBhcmFtZXRlcnMsICJjb20uYXBwbGUuc2Fm
YXJpLnBlZXJ0b3BlZXIiKTsKKyNpZiBIQVZFKE5XUEFSQU1FVEVSU19UUkFDS0VSX0FQSSkKKyAg
ICBud19wYXJhbWV0ZXJzX3NldF9pc190aGlyZF9wYXJ0eV93ZWJfY29udGVudChwYXJhbWV0ZXJz
LCAhaXNGaXJzdFBhcnR5KTsKKyAgICBud19wYXJhbWV0ZXJzX3NldF9pc19rbm93bl90cmFja2Vy
KHBhcmFtZXRlcnMsIGlzS25vd25UcmFja2VyKTsKKyNlbmRpZgorfQorCitib29sIGlzS25vd25U
cmFja2VyKGNvbnN0IFdlYkNvcmU6OlJlZ2lzdHJhYmxlRG9tYWluJiBkb21haW4pCit7CisjaWYg
SEFWRShOV1BBUkFNRVRFUlNfVFJBQ0tFUl9BUEkpCisgICAgTlNBcnJheTxOU1N0cmluZyAqPiAq
ZG9tYWlucyA9IEBbZG9tYWluLnN0cmluZygpXTsKKyAgICBORUhlbHBlclRyYWNrZXJEb21haW5D
b250ZXh0UmVmICpjb250ZXh0ID0gbmlsOworICAgIENGSW5kZXggaW5kZXggPSAwOworICAgIHJl
dHVybiAhIU5FSGVscGVyVHJhY2tlckdldERpc3Bvc2l0aW9uKG51bGxwdHIsIChDRkFycmF5UmVm
KWRvbWFpbnMsIGNvbnRleHQsICZpbmRleCk7CisjZWxzZQorICAgIHJldHVybiBmYWxzZTsKKyNl
bmRpZgorfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKIAogI2VuZGlmIC8vIFVTRShMSUJXRUJS
VEMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay93ZWJydGMv
TGliV2ViUlRDUHJvdmlkZXIuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsv
d2VicnRjL0xpYldlYlJUQ1Byb3ZpZGVyLmNwcAppbmRleCBmOWM0YTkwZDgyMWRhZjdhOGFiMzlh
ZmRkMzE2NDIwNTg1MTYzYjc0Li43ZjQwNjI5ZTViMmIzYzRjZDdhNjY5OThhMGMxMDc2MDlmNmZh
MzgwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay93ZWJydGMv
TGliV2ViUlRDUHJvdmlkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3
b3JrL3dlYnJ0Yy9MaWJXZWJSVENQcm92aWRlci5jcHAKQEAgLTEyNSw3ICsxMjUsNyBAQCBydGM6
OkFzeW5jUGFja2V0U29ja2V0KiBSVENTb2NrZXRGYWN0b3J5OjpDcmVhdGVTZXJ2ZXJUY3BTb2Nr
ZXQoY29uc3QgcnRjOjpTb2NrZQogCiBydGM6OkFzeW5jUGFja2V0U29ja2V0KiBSVENTb2NrZXRG
YWN0b3J5OjpDcmVhdGVDbGllbnRUY3BTb2NrZXQoY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiBs
b2NhbEFkZHJlc3MsIGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYgcmVtb3RlQWRkcmVzcywgY29u
c3QgcnRjOjpQcm94eUluZm8mLCBjb25zdCBzdGQ6OnN0cmluZyYsIGNvbnN0IHJ0Yzo6UGFja2V0
U29ja2V0VGNwT3B0aW9ucyYgb3B0aW9ucykKIHsKLSAgICByZXR1cm4gV2ViUHJvY2Vzczo6c2lu
Z2xldG9uKCkubGliV2ViUlRDTmV0d29yaygpLnNvY2tldEZhY3RvcnkoKS5jcmVhdGVDbGllbnRU
Y3BTb2NrZXQodGhpcywgbG9jYWxBZGRyZXNzLCByZW1vdGVBZGRyZXNzLCBTdHJpbmcgeyBtX3Vz
ZXJBZ2VudCB9LCBvcHRpb25zLCBtX3BhZ2VJZGVudGlmaWVyLCBtX2lzUmVsYXlEaXNhYmxlZCk7
CisgICAgcmV0dXJuIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmxpYldlYlJUQ05ldHdvcmsoKS5z
b2NrZXRGYWN0b3J5KCkuY3JlYXRlQ2xpZW50VGNwU29ja2V0KHRoaXMsIGxvY2FsQWRkcmVzcywg
cmVtb3RlQWRkcmVzcywgU3RyaW5nIHsgbV91c2VyQWdlbnQgfSwgb3B0aW9ucywgbV9wYWdlSWRl
bnRpZmllciwgbV9pc0ZpcnN0UGFydHksIG1faXNSZWxheURpc2FibGVkLCBtX2RvbWFpbik7CiB9
CiAKIHJ0Yzo6QXN5bmNSZXNvbHZlckludGVyZmFjZSogUlRDU29ja2V0RmFjdG9yeTo6Q3JlYXRl
QXN5bmNSZXNvbHZlcigpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0
d29yay93ZWJydGMvTGliV2ViUlRDU29ja2V0RmFjdG9yeS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvTmV0d29yay93ZWJydGMvTGliV2ViUlRDU29ja2V0RmFjdG9yeS5jcHAKaW5kZXgg
ODFlMTVlODg2NGI2MGI5MWUzYTIzZWUyZjZiODNmNzlkMzM2ZDM5Zi4uMWVhYWYzNWVkYTE1Nzgz
OTJlYjZmODI0OGExODc5ZjVlODk1NzkwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQ
cm9jZXNzL05ldHdvcmsvd2VicnRjL0xpYldlYlJUQ1NvY2tldEZhY3RvcnkuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0Yy9MaWJXZWJSVENTb2NrZXRGYWN0
b3J5LmNwcApAQCAtMTA0LDcgKzEwNCw3IEBAIHJ0Yzo6QXN5bmNQYWNrZXRTb2NrZXQqIExpYldl
YlJUQ1NvY2tldEZhY3Rvcnk6OmNyZWF0ZVVkcFNvY2tldChjb25zdCB2b2lkKiBzb2NrCiAgICAg
cmV0dXJuIHNvY2tldC5yZWxlYXNlKCk7CiB9CiAKLXJ0Yzo6QXN5bmNQYWNrZXRTb2NrZXQqIExp
YldlYlJUQ1NvY2tldEZhY3Rvcnk6OmNyZWF0ZUNsaWVudFRjcFNvY2tldChjb25zdCB2b2lkKiBz
b2NrZXRHcm91cCwgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiBsb2NhbEFkZHJlc3MsIGNvbnN0
IHJ0Yzo6U29ja2V0QWRkcmVzcyYgcmVtb3RlQWRkcmVzcywgU3RyaW5nJiYgdXNlckFnZW50LCBj
b25zdCBydGM6OlBhY2tldFNvY2tldFRjcE9wdGlvbnMmIG9wdGlvbnMsIFdlYlBhZ2VQcm94eUlk
ZW50aWZpZXIgcGFnZUlkZW50aWZpZXIsIGJvb2wgaXNSZWxheURpc2FibGVkKQorcnRjOjpBc3lu
Y1BhY2tldFNvY2tldCogTGliV2ViUlRDU29ja2V0RmFjdG9yeTo6Y3JlYXRlQ2xpZW50VGNwU29j
a2V0KGNvbnN0IHZvaWQqIHNvY2tldEdyb3VwLCBjb25zdCBydGM6OlNvY2tldEFkZHJlc3MmIGxv
Y2FsQWRkcmVzcywgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiByZW1vdGVBZGRyZXNzLCBTdHJp
bmcmJiB1c2VyQWdlbnQsIGNvbnN0IHJ0Yzo6UGFja2V0U29ja2V0VGNwT3B0aW9ucyYgb3B0aW9u
cywgV2ViUGFnZVByb3h5SWRlbnRpZmllciBwYWdlSWRlbnRpZmllciwgYm9vbCBpc0ZpcnN0UGFy
dHksIGJvb2wgaXNSZWxheURpc2FibGVkLCBjb25zdCBXZWJDb3JlOjpSZWdpc3RyYWJsZURvbWFp
biYgZG9tYWluKQogewogICAgIEFTU0VSVCghV1RGOjppc01haW5SdW5Mb29wKCkpOwogCkBAIC0x
MTMsMTMgKzExMywxMyBAQCBydGM6OkFzeW5jUGFja2V0U29ja2V0KiBMaWJXZWJSVENTb2NrZXRG
YWN0b3J5OjpjcmVhdGVDbGllbnRUY3BTb2NrZXQoY29uc3Qgdm9pZAogCiAgICAgLy8gRklYTUU6
IFdlIG9ubHkgdHJhbnNmZXIgb3B0aW9ucy5vcHRzIGJ1dCBzaG91bGQgYWxzbyBoYW5kbGUgb3Ro
ZXIgbWVtYmVycy4KICAgICBpZiAobV9jb25uZWN0aW9uKQotICAgICAgICBtX2Nvbm5lY3Rpb24t
PnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtSVENQcm92aWRlcjo6Q3JlYXRlQ2xpZW50VENQU29ja2V0
KHNvY2tldC0+aWRlbnRpZmllcigpLCBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzKHByZXBhcmVT
b2NrZXRBZGRyZXNzKGxvY2FsQWRkcmVzcywgbV9kaXNhYmxlTm9uTG9jYWxob3N0Q29ubmVjdGlv
bnMpKSwgUlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyhwcmVwYXJlU29ja2V0QWRkcmVzcyhyZW1v
dGVBZGRyZXNzLCBtX2Rpc2FibGVOb25Mb2NhbGhvc3RDb25uZWN0aW9ucykpLCB1c2VyQWdlbnQs
IG9wdGlvbnMub3B0cywgcGFnZUlkZW50aWZpZXIsIGlzUmVsYXlEaXNhYmxlZCksIDApOworICAg
ICAgICBtX2Nvbm5lY3Rpb24tPnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtSVENQcm92aWRlcjo6Q3Jl
YXRlQ2xpZW50VENQU29ja2V0KHNvY2tldC0+aWRlbnRpZmllcigpLCBSVENOZXR3b3JrOjpTb2Nr
ZXRBZGRyZXNzKHByZXBhcmVTb2NrZXRBZGRyZXNzKGxvY2FsQWRkcmVzcywgbV9kaXNhYmxlTm9u
TG9jYWxob3N0Q29ubmVjdGlvbnMpKSwgUlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyhwcmVwYXJl
U29ja2V0QWRkcmVzcyhyZW1vdGVBZGRyZXNzLCBtX2Rpc2FibGVOb25Mb2NhbGhvc3RDb25uZWN0
aW9ucykpLCB1c2VyQWdlbnQsIG9wdGlvbnMub3B0cywgcGFnZUlkZW50aWZpZXIsIGlzRmlyc3RQ
YXJ0eSwgaXNSZWxheURpc2FibGVkLCBkb21haW4pLCAwKTsKICAgICBlbHNlIHsKICAgICAgICAg
Y2FsbE9uTWFpblJ1bkxvb3AoW10gewogICAgICAgICAgICAgV2ViUHJvY2Vzczo6c2luZ2xldG9u
KCkuZW5zdXJlTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uKCk7CiAgICAgICAgIH0pOwotICAgICAg
ICBtX3BlbmRpbmdNZXNzYWdlVGFza3MuYXBwZW5kKFtpZGVudGlmaWVyID0gc29ja2V0LT5pZGVu
dGlmaWVyKCksIGxvY2FsQWRkcmVzcyA9IFJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MocHJlcGFy
ZVNvY2tldEFkZHJlc3MobG9jYWxBZGRyZXNzLCBtX2Rpc2FibGVOb25Mb2NhbGhvc3RDb25uZWN0
aW9ucykpLCByZW1vdGVBZGRyZXNzID0gUlRDTmV0d29yazo6U29ja2V0QWRkcmVzcyhwcmVwYXJl
U29ja2V0QWRkcmVzcyhyZW1vdGVBZGRyZXNzLCBtX2Rpc2FibGVOb25Mb2NhbGhvc3RDb25uZWN0
aW9ucykpLCB1c2VyQWdlbnQsIG9wdHMgPSBvcHRpb25zLm9wdHMsIHBhZ2VJZGVudGlmaWVyLCBp
c1JlbGF5RGlzYWJsZWRdKGF1dG8mIGNvbm5lY3Rpb24pIHsKLSAgICAgICAgICAgIGNvbm5lY3Rp
b24uc2VuZChNZXNzYWdlczo6TmV0d29ya1JUQ1Byb3ZpZGVyOjpDcmVhdGVDbGllbnRUQ1BTb2Nr
ZXQoaWRlbnRpZmllciwgbG9jYWxBZGRyZXNzLCByZW1vdGVBZGRyZXNzLCB1c2VyQWdlbnQsIG9w
dHMsIHBhZ2VJZGVudGlmaWVyLCBpc1JlbGF5RGlzYWJsZWQpLCAwKTsKKyAgICAgICAgbV9wZW5k
aW5nTWVzc2FnZVRhc2tzLmFwcGVuZChbaWRlbnRpZmllciA9IHNvY2tldC0+aWRlbnRpZmllcigp
LCBsb2NhbEFkZHJlc3MgPSBSVENOZXR3b3JrOjpTb2NrZXRBZGRyZXNzKHByZXBhcmVTb2NrZXRB
ZGRyZXNzKGxvY2FsQWRkcmVzcywgbV9kaXNhYmxlTm9uTG9jYWxob3N0Q29ubmVjdGlvbnMpKSwg
cmVtb3RlQWRkcmVzcyA9IFJUQ05ldHdvcms6OlNvY2tldEFkZHJlc3MocHJlcGFyZVNvY2tldEFk
ZHJlc3MocmVtb3RlQWRkcmVzcywgbV9kaXNhYmxlTm9uTG9jYWxob3N0Q29ubmVjdGlvbnMpKSwg
dXNlckFnZW50LCBvcHRzID0gb3B0aW9ucy5vcHRzLCBwYWdlSWRlbnRpZmllciwgaXNGaXJzdFBh
cnR5LCBpc1JlbGF5RGlzYWJsZWQsIGRvbWFpbl0oYXV0byYgY29ubmVjdGlvbikgeworICAgICAg
ICAgICAgY29ubmVjdGlvbi5zZW5kKE1lc3NhZ2VzOjpOZXR3b3JrUlRDUHJvdmlkZXI6OkNyZWF0
ZUNsaWVudFRDUFNvY2tldChpZGVudGlmaWVyLCBsb2NhbEFkZHJlc3MsIHJlbW90ZUFkZHJlc3Ms
IHVzZXJBZ2VudCwgb3B0cywgcGFnZUlkZW50aWZpZXIsIGlzRmlyc3RQYXJ0eSwgaXNSZWxheURp
c2FibGVkLCBkb21haW4pLCAwKTsKICAgICAgICAgfSk7CiAgICAgfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay93ZWJydGMvTGliV2ViUlRDU29ja2V0RmFj
dG9yeS5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvd2VicnRjL0xpYldlYlJU
Q1NvY2tldEZhY3RvcnkuaAppbmRleCBiZDE5OWNhNzExZGIxMjZiMTdjNGJhYWRkMDg0NTg2ZDkx
YWVhNWIyLi5kZjMyN2ZlZDJiNzhmOTMzMDk4NzE2ODJiNTdmZjU1MzlmOGY2NGFjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay93ZWJydGMvTGliV2ViUlRDU29j
a2V0RmFjdG9yeS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL3dlYnJ0
Yy9MaWJXZWJSVENTb2NrZXRGYWN0b3J5LmgKQEAgLTU0LDcgKzU0LDcgQEAgcHVibGljOgogICAg
IHZvaWQgZm9yU29ja2V0SW5Hcm91cChjb25zdCB2b2lkKiBzb2NrZXRHcm91cCwgY29uc3QgRnVu
Y3Rpb248dm9pZChMaWJXZWJSVENTb2NrZXQmKT4mKTsKICAgICBydGM6OkFzeW5jUGFja2V0U29j
a2V0KiBjcmVhdGVVZHBTb2NrZXQoY29uc3Qgdm9pZCogc29ja2V0R3JvdXAsIGNvbnN0IHJ0Yzo6
U29ja2V0QWRkcmVzcyYsIHVpbnQxNl90IG1pblBvcnQsIHVpbnQxNl90IG1heFBvcnQsIFdlYlBh
Z2VQcm94eUlkZW50aWZpZXIsIGJvb2wgaXNGaXJzdFBhcnR5LCBib29sIGlzUmVsYXlEaXNhYmxl
ZCwgY29uc3QgV2ViQ29yZTo6UmVnaXN0cmFibGVEb21haW4mKTsKICAgICBydGM6OkFzeW5jUGFj
a2V0U29ja2V0KiBjcmVhdGVTZXJ2ZXJUY3BTb2NrZXQoY29uc3Qgdm9pZCogc29ja2V0R3JvdXAs
IGNvbnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYsIHVpbnQxNl90IG1pblBvcnQsIHVpbnQxNl90IG1h
eFBvcnQsIGludCBvcHRpb25zKTsKLSAgICBydGM6OkFzeW5jUGFja2V0U29ja2V0KiBjcmVhdGVD
bGllbnRUY3BTb2NrZXQoY29uc3Qgdm9pZCogc29ja2V0R3JvdXAsIGNvbnN0IHJ0Yzo6U29ja2V0
QWRkcmVzcyYgbG9jYWxBZGRyZXNzLCBjb25zdCBydGM6OlNvY2tldEFkZHJlc3MmIHJlbW90ZUFk
ZHJlc3MsIFN0cmluZyYmIHVzZXJBZ2VudCwgY29uc3QgcnRjOjpQYWNrZXRTb2NrZXRUY3BPcHRp
b25zJiwgV2ViUGFnZVByb3h5SWRlbnRpZmllciwgYm9vbCBpc1JlbGF5RGlzYWJsZWQpOworICAg
IHJ0Yzo6QXN5bmNQYWNrZXRTb2NrZXQqIGNyZWF0ZUNsaWVudFRjcFNvY2tldChjb25zdCB2b2lk
KiBzb2NrZXRHcm91cCwgY29uc3QgcnRjOjpTb2NrZXRBZGRyZXNzJiBsb2NhbEFkZHJlc3MsIGNv
bnN0IHJ0Yzo6U29ja2V0QWRkcmVzcyYgcmVtb3RlQWRkcmVzcywgU3RyaW5nJiYgdXNlckFnZW50
LCBjb25zdCBydGM6OlBhY2tldFNvY2tldFRjcE9wdGlvbnMmLCBXZWJQYWdlUHJveHlJZGVudGlm
aWVyLCBib29sIGlzRmlyc3RQYXJ0eSwgYm9vbCBpc1JlbGF5RGlzYWJsZWQsIGNvbnN0IFdlYkNv
cmU6OlJlZ2lzdHJhYmxlRG9tYWluJik7CiAgICAgcnRjOjpBc3luY1BhY2tldFNvY2tldCogY3Jl
YXRlTmV3Q29ubmVjdGlvblNvY2tldChMaWJXZWJSVENTb2NrZXQmLCBXZWJDb3JlOjpMaWJXZWJS
VENTb2NrZXRJZGVudGlmaWVyIG5ld0Nvbm5lY3Rpb25Tb2NrZXRJZGVudGlmaWVyLCBjb25zdCBy
dGM6OlNvY2tldEFkZHJlc3MmKTsKIAogICAgIExpYldlYlJUQ1Jlc29sdmVyKiByZXNvbHZlcihM
aWJXZWJSVENSZXNvbHZlcklkZW50aWZpZXIgaWRlbnRpZmllcikgeyByZXR1cm4gbV9yZXNvbHZl
cnMuZ2V0KGlkZW50aWZpZXIpOyB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>